有没有办法将pdb文件与ilmerge合并?

由于各种原因,我们使用ilmerge将所有应用程序集合放入一个文件中,因此用户只需处理一个文件。 不幸的是,似乎没有办法将.pdb文件与程序集合并。 任何人都知道解决这个问题的方法吗?

好吧,我想出了这个,虽然花了一段时间。

那篇文章/ ndebug完全倒退了。

从ILMerge附带的发行说明(ILMerge.doc,强调我的):

2.8 DebugInfo public bool DebugInfo {get; 组; 当此参数设置为true时,ILMerge会为输出程序集创建一个.pdb文件,并将为输入程序集找到的任何.pdb文件合并到该文件中。 如果您不想为输出程序集创建.pdb文件,请将此属性设置为false,或者在命令行中指定/ ndebug选项。 默认值:true命令行选项:/ ndebug

解决方案是在命令行上没有该标志。 ILMerge默认会合并pdb文件。 确保源程序集的所有pdb文件与其关联的dll一起位于同一目录中,以便ILMerge可以找到它们。 (我们正在使用项目引用并有一个ILMerge项目,它负责此要求。)

这是我的ILMerge csproj文件中的相关部分。

       

为了完整起见,我使用的是最新版本的ilmerge.exe:版本2.10.219.0,最后修改日期为2010年2月19日上午9:49