我正在尝试合并两个文件。其中一个是.net3.5 wpf应用程序,另一个是WPF notify icon dll
我使用以下命令:
IlMerge /target:winexe /out:PS.exe "PlayerSearcher.exe" "Hardcodet.Wpf.TaskbarNotification.dll"
但是当我发布结果时,我的应用程序因此错误而崩溃
EventType:clr20r3 P1:ps.exe
P2:1.0.0.0 P3:4c0ee52f P4 :presentationframework P5: 3.0.0.0 P6:4938d608 P7:9a1 P8:46 P9:system.io.ioexception
为什么呢?我如何构建单个文件应用程序?
答案 0 :(得分:1)
只是猜测,但您可能需要合并其他引用。例如,也许您还将somethingelse.dll与EXE一起复制到项目的bin文件夹中并忘记包含它?
您不应该从GAC合并.NET Framework程序集,除非“Copy Local”True / false设置存在问题:
现在,您修改的项目将会 自动拥有所有参考 合并的程序集。只有 标记为“复制本地”的程序集将是 合并了系统程序集和GAC 默认情况下不会合并程序集。
- http://blogs.msdn.com/b/jomo_fisher/archive/2006/03/05/544144.aspx
也许,只是为了调试它,尝试将.NET Framework类本地复制到您的项目中并合并它们以查看它是否有效。这可能有助于开始隔离错误。