我想发布没有.NET框架的.NET程序。是否可以将.NET程序编译为机器代码?
最佳答案
是的,您可以使用Ngen.exe进行预编译,但这不会消除CLR依赖性。
您仍然必须同时交付IL程序集,Ngen的唯一好处是您的应用程序可以在不调用JIT的情况下启动,因此您获得了真正的快速启动时间。
根据CLR通过C#:
Also, assemblies precompiled using Ngen are usually slower than JIT'ed assemblies because the JIT compiler can optimize to the targets machine (32-bit? 64-bit? Special registers? etc), while NGEN will just produce a baseline compilation.
编辑:
关于通过C#通过CLR提供的上述信息有一些争论,有人说您只需要在安装过程中在目标计算机上运行Ngen。
关于.net - 是否可以将.NET IL代码编译为机器代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/140750/