我使用IlMerge将我的项目的所有dll合并到一个exe中.我使用在主csproj的“导入”中引用的目标文件.
目标中的ExecCommand为:
<Exec Command=""$(ProgramFiles)\Microsoft\Ilmerge\Ilmerge.exe" /out:@(MainAssembly) "@(IntermediateAssembly)" @(IlmergeAssemblies->'"%(FullPath)"', ' ')" />
这可行.
但是然后我有了一个安装项目,当它生成时,它会忽略“导入”,并且不会合并dll.如何在安装项目中使用目标文件?
我已经尝试在主项目的Post-build事件中(在项目的属性中)为Ilmerge编写相同的代码,但是它给我错误代码1.
解决方法:
我建议您在MSBuild Community Tasks中检出ILMerge任务.download中包含ILMerge任务的文档.它将消除您像现在一样指定确切的命令行参数的复杂性.
关于您的特定问题,除了错误代码1,您是否还收到其他任何错误消息?发表评论,我将尽力编辑回复.