[CLR via C#]1.3 加载公共语言运行时
1. 你生成的每个程序集可以是EXE,也可以是DLL。最终都是有CLR管理这些程序集中代码的执行。
2. VS2010中,创建新的EXE项目时,默认平台是x86,而不是anycpu。
3. Windows的64位版本提供了一个名为WoW64(Windows on Windows64)的技术,允许允许32位的Windows程序。这是因为这个技术能模拟x86的指令集,但这样会显著影响性能。
4. 编译目标平台对生成的模型的影响以及运行时的影响。![]()

5. Windows检查好EXE文件头,决定创建32位、64位还是WoW64进程之后,会在进程的地址空间中加载MSCorEE.dll的x86,x64或IA64版本。然后,进行的主线程调用MSCorEE.dll中定义的一个方法。这个方法初始化CLR,加载EXE程序集,然后调用其入口方法(Main)。最后,托管的应用程序将启用并运行。
6.如果非托管程序调用LoadLibrary来加载一个托管程序集,Windows会自动并初始化CLR(如果尚未加载的话),以便处理程序集中的代码。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步