我尝试在基于 WPF 的项目(VS2010、Net4.0)上使用 ILMerge,但无法使合并的可执行文件运行。所以我创建了两个非常简单的项目
- 只是一个打印出 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
(我之所以调用多行代码只是为了便于阅读)。好的,现在控制台应用程序已合并并像以前一样正常运行,wpf 应用程序已合并没有任何错误,但我无法运行它。我是说,我打字
Merged.exe
任务栏闪烁,但什么也没有出现——没有窗口,没有错误,什么也没有。
那么我应该如何合并 WPF 应用程序呢?