由于各种原因,我们使用ilmerge将我们的所有应用程序集合放到一个文件中,以便用户只需处理一个文件。不幸的是,似乎没有办法将.pdb文件与程序集合并在一起。任何人都知道解决这个问题的方法吗?有没有办法将pdb文件与ilmerge合并?
19
A
回答
24
好吧,我想出了这一个,虽然它花了一段时间。
那篇文章有/ ndebug正好倒退。
从附带ILMerge(ILMerge.doc,重点煤矿)的发行说明:
2.8 debuginfo软公共BOOL debuginfo软{获得;组; } 当此参数设置为true时, ILMerge为 输出程序集创建一个.pdb文件,并将其合并到为其输入程序集找到的任何 .pdb文件中。 如果你不希望一个.pdb文件的输出组件创建 ,要么设置 此属性设置为false或者指定 在命令行 的/ NDEBUG选项。默认值:true命令行选项 :/ NDEBUG
的解决方案是专门不有该标志在命令行上。 ILMerge默认会合并pdb文件。确保源程序集的所有pdb文件位于相同的目录中,与其关联的dll一起,以便ILMerge可以找到它们。 (我们正在使用项目参考,并有一个ILMerge项目,该项目负责照顾此项需求。)
这是我的ILMerge csproj文件中的相关部分。
<Target Name="AfterBuild">
<CreateItem Include="@(ReferencePath)" Condition="'%(CopyLocal)'=='true'">
<Output TaskParameter="Include" ItemName="IlmergeAssemblies" />
</CreateItem>
<Exec Command=""..\..\Libraries\Ilmerge.exe" /copyattrs /allowMultiple /out:"@(MainAssembly)" "@(IntermediateAssembly)" @(IlmergeAssemblies->'"%(FullPath)"', ' ')" />
<Delete Files="@(ReferenceCopyLocalPaths->'$(OutDir)%(DestinationSubDirectory)%(Filename)%(Extension)')" />
</Target>
为了完整起见,我使用的是最新版本的ilmerge.exe:版本2.10.219.0,随着2010/2/19 9:49
-3
相关问题
- 1. 有没有办法将两个.gcda文件合并为一个?
- 2. 有没有办法将两个gcov文件合并为一个
- 3. 尝试合并pdb文件时出现ILMerge异常
- 4. 有没有办法在reportlib中用python3合并PDF文件?
- 5. 有没有办法在pdf.js中合并PDF文件?
- 6. 有没有办法整合zephyr与github?
- 7. 我有没有办法将这3种方法合并为1?
- 8. 如何使用ILMerge将XML文档文件与DLL合并?
- 9. 有没有办法将这些查询合并为一个?
- 10. 有没有办法将这两条线合并为一个?
- 11. 有没有办法将python代码合并到moinmoin页面中?
- 12. 有没有办法将这3个查询合并为一个
- 13. 有没有办法将两个LINQ查询合并为一个?
- 14. 有没有办法使用iTextSharp合并动态XFA文档
- 15. 有没有办法将SQL列与LIKE结合起来
- 16. 有没有办法将spring roo与couchdb整合
- 17. 有没有办法将JSON文件捆绑到Jar文件?
- 18. 有没有办法让pdb和Mac Terminal玩得很好?
- 19. 有没有办法将g套件服务整合到php中?
- 20. 用ILMerge合并.dll文件失败
- 21. C#使用ILMerge合并.dll文件
- 22. 有没有办法切换JavaScript文件?
- 23. 有没有办法调试plist文件?
- 24. 有没有办法解压JavaScript文件?
- 25. 有没有办法保护iCalender文件?
- 26. 有没有办法测试CSS文件?
- 27. 有没有办法区分C++文件?
- 28. 有没有办法将文本文件放入数据库(SQLite)?
- 29. 有没有办法将两个或更多.DEX文件合并到使用Scala的一个.DEX文件?
- 30. 有没有办法将标记与文本关联?
最后修改日期,但为什么你需要的?你想添加只是作为一个资源? – 2009-09-17 15:55:00
当应用程序崩溃堆栈跟踪时,只显示失败的函数的名称。通过可执行文件中的pdb文件,它还显示出现错误的源文件中的行号。 – pat 2009-09-17 16:21:10