C#中用ILMerge將所有引用的DLL和exe檔案打成一個exe檔案

來源:互聯網
上載者:User

今天做了一個軟體,想發布的時候才發現調用的類沒幾個,就像把它們都跟EXE檔案打包在一起,以後複製去別的地方用也方便,於是上網搜了一下,發現網上大部分都是用ILMerge實現的,於是也自己試了一下,不過網上都沒有詳細的步驟示範,我就花點時間做了個教程,方便以後再有人想打包自己的程式, 有篇文章可以參考,好了廢話少說,馬上開始:

  1.先到http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-B4AD-4EAE-87CF-B14AE6A939B0&displaylang=en下載ILMerge,才600多K,一下子就下好了.

  2.下載後是安裝:

  3.不到一分鐘就可以安裝完畢:

 4.我是安裝在I盤下ILMerge目錄下,以下是安裝後的檔案,就一個ILMerge.exe檔案而已,我們等會就是用它打包程式的.

 

  5.為了示範,我重建立了個工程,最後產生的是 Main.exe 和 newDll檔案,其中newDll是Main.exe 中要引用的Dll檔案,為了示範方便,我將它們都複製到了ILMerge的目錄下,現在我們就試著用ILMerge將newDll和Main.exe檔案打包起來吧.

 

6.然後進入dos視窗,進入ILMerge目錄,然後執行下面代碼:

  I:ILMergeILMerge.exe /ndebug /target:winexe  /out:newclient.exe MainExe.exe  /log newDll.dll

  7.ILMerge運行時的視窗,此時它正在努力的將Main.exe和newDll檔案捆綁在一起:

 

 

 8.DOS視窗關閉後,我們在去ILMerge目錄下看看,此時已經產生好了我們想要的newclient.exe檔案,它就是Main.exe和newDll.dll的結合體啦:

 

 以上實驗在WIN7下.net framework3.5 平台,vs2008環境中測試通過

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.