我試圖在我的基於WPF的項目(VS2010,Net4.0)上使用ILMerge,但我無法使合併的可執行文件運行。所以,我創建了兩個非常簡單的項目如何合併WPF應用程序的程序集?
- 只是一個控制檯應用程序將打印出的Hello World
- WPF應用程序,它顯示窗口的Hello World標籤
編譯每個項目後,我得到一個可執行文件(所以合併,並不真正合並任何東西,它只是爲了測試)。當然,每個可執行文件都有效
然後我 「合併」 每個可執行文件是這樣的:
"C:\Program Files\Microsoft\ILMerge\ilmerge"
/targetplatform:v4,c:\Windows\Microsoft.NET\Framework\v4.0.30319
/lib:c:\Windows\Microsoft.NET\Framework\v4.0.30319\wpf
/out:Merged.exe MyApplication.exe
(我提出的要求多隻爲SO可讀性)。好的,現在控制檯應用程序被合併並且運行得像以前一樣好,wpf應用程序合併時沒有任何錯誤,但是我無法運行它。我的意思是,我鍵入
Merged.exe
任務欄閃爍,但沒有顯示出來 - 沒有窗戶,沒有錯誤,沒有什麼。
那麼我應該如何合併WPF應用程序?
您可以將程序集視爲資源,請參閱我的答案[這裏] [1]。 [1]:http://stackoverflow.com/questions/1025843/merging-dlls-into-a-single-exe-with-wpf/7025702#7025702 – Matthieu 2011-08-11 12:19:11