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

时间:2011-07-21 18:59:46

标签: c#

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

1 个答案:

答案 0 :(得分:7)

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

(资料来源:Why is Main method private?

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

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