none
.NET 程序是否允许静态编译? RRS feed

  • 问题

  • 我用C#写了一个Winform小程序。引用了一些dll。
    但是由于这个程序本身很小,却有一个exe和两个dll,显得非常不伦不类,我就想有没有法子把那2个dll静态编译到exe中去呢?

    注:这两个dll都是用.net写的。
    2010年2月25日 18:22

答案

  • 用Ilmerge可以合并IL。
    用.Net的编译器无法静态编译,你需要其他的编辑器来实现编辑到机器码。


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    • 已标记为答案 Karazhan 2010年2月26日 4:30
    2010年2月25日 19:10
    版主
  • 你好!
         如果想合并两个程序集,你可以使用ILMerge这个工具:
    http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en
         如果想生成传统的奔机代码,可以使用ngen这个工具,这个工具是.NET Framework自带的,你可以在系统盘中搜索这个工具!
    周雪峰
    • 已标记为答案 Karazhan 2010年2月26日 4:30
    2010年2月26日 3:18
    版主

全部回复

  • 用Ilmerge可以合并IL。
    用.Net的编译器无法静态编译,你需要其他的编辑器来实现编辑到机器码。


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    • 已标记为答案 Karazhan 2010年2月26日 4:30
    2010年2月25日 19:10
    版主
  • 你好!
         如果想合并两个程序集,你可以使用ILMerge这个工具:
    http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en
         如果想生成传统的奔机代码,可以使用ngen这个工具,这个工具是.NET Framework自带的,你可以在系统盘中搜索这个工具!
    周雪峰
    • 已标记为答案 Karazhan 2010年2月26日 4:30
    2010年2月26日 3:18
    版主