跪求 ngen.exe 的用法 小弟做了个小程序,由于空间太多,启动有点慢,查了下资料,说用ngen.exe编译成本地代码可以提高启动速度。小弟在命令提示符那里试了一下,可以生成成功。 小弟想让程序在安装的时候就运行ngen.exe 可是不知道命令该往哪写,哪个大哥可以提供一下具体步骤啊? 先拜谢了。注: 不要思路,要具体步骤,越详细越好,分不够说话,可以追加。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 利用ngen.exe生成程序集的本机镜像 用C#编写的代码经C#编译器后,并非生成本地代码而是生成托管代码。也就是说,程序集在打包时是连同CLR一起打包的。在客户端的机器上,CLR一行行的读取IL,在读取每行IL时,CLR利用JIT编译器将IL编译成本地的CPU指令。若要节省这段JIT编译器进行编译的时间,可以利用ngen.exe生成程序集的本机镜像,生成的本机镜像保存在全局程序集(GAC)的一块保留区域内。 下面举个例子,进行简单说明。打开VS2005,新建一个windows应用程序,命名为AP。在添加两个类库项目,分别命名为A和B,且进行强命名。 在命令提示行内打入如下,命令就可以创建本机镜像: ngen AP.exe "A, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5", "B, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5" 之后,打开“控制面板”—“管理工具”—“microsoft .net framework 2.0 配置”在程序集缓存的节点下就可以看到AP.EXE,A.DLL,B.DLL三个程序集,其类型显示也不再是MSIL而是X86。 http://msdn.microsoft.com/zh-cn/library/6t9t5wcf.aspx ngen install ClientApp.exe大哥 我想知道这个命令在程序里往哪写, 或者写在命令提示里面里 是不是文件在部署的时候就一块儿打包走了还是怎么回事? 命令提示行就是cmd(也就是一些人所说的dos,虽然它和dos只是长得有点像...)另外ngen的效果并不是那么好,某些情况下可能降低执行效率(ngen生成的本地码是无优化的).所以一般都不用. up up up 你是想将一个程序打包,用户在安装时 去执行ngen命令? C# MDI 布局 传地址还是传值?? 关于一个字符串正则的问题 如何对已定义的结构体数组引用? 急!!AJAX 疑难问题!3天没有解决,今天最后期限了!ScriptManager.RegisterStartupScript产生确认取消对话框,确认后,如果继续执行后 线程同步问题 终于在国外的网站上找到了真正免费的EAN-13 的条码字体.有VB使用例子.. 关于DataGrid的一个问题,....高手请进,(+分) c#用户控件安装包的问题? 招聘!程序员:4000/月,项目经理:5000-6000,设计高手:7000-8000,可以谈 求时间差的算法 C#操作word
用C#编写的代码经C#编译器后,并非生成本地代码而是生成托管代码。也就是说,程序集在打包时是连同CLR一起打包的。在客户端的机器上,CLR一行行的读取IL,在读取每行IL时,CLR利用JIT编译器将IL编译成本地的CPU指令。若要节省这段JIT编译器进行编译的时间,可以利用ngen.exe生成程序集的本机镜像,生成的本机镜像保存在全局程序集(GAC)的一块保留区域内。 下面举个例子,进行简单说明。打开VS2005,新建一个windows应用程序,命名为AP。在添加两个类库项目,分别命名为A和B,且进行强命名。
在命令提示行内打入如下,命令就可以创建本机镜像:
ngen AP.exe
"A, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5",
"B, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0038abc9deabfle5"
之后,打开“控制面板”—“管理工具”—“microsoft .net framework 2.0 配置”在程序集缓存的节点下就可以看到AP.EXE,A.DLL,B.DLL三个程序集,其类型显示也不再是MSIL而是X86。
大哥 我想知道这个命令在程序里往哪写, 或者写在命令提示里面里 是不是文件在部署的时候就一块儿打包走了还是怎么回事?
另外ngen的效果并不是那么好,某些情况下可能降低执行效率(ngen生成的本地码
是无优化的).所以一般都不用.