.NET如何知道我的应用程序的主要方法是什么?

CLR如何识别应用程序的主要方法以便开始执行?
执行.exe文件时CLR执行的操作顺序究竟是什么?

这是一个C#标准,入口点称为Main 。 当编译为IL时,它被标记为.entrypoint ,这是CLR用于标识要启动的方法的内容。

(来源: 为什么Main方法是私有的? )

.NET可执行文件也是普通的Win32可执行文件。 在正常的Win32入口点处放置一个启动CLR的小型引导代码。 在WinXP之前的操作系统上,可执行文件作为普通的Win32 exe启动,调用启动CLR的boostrap代码。 一旦启动,CLR就会在IL代码中查找.entrypoint并在那里开始执行。 在WinXP及更高版本上,OS将该文件识别为CLR可执行文件并直接调用CLR。

(来源: http : //www.dotnetperformance.com/downloads/ngen.doc )