我有DLL,我有用于创建DLL的确切来源.当我们从客户那里获得转储文件时,我希望我们的本地符号服务器工作.(在我们的产品的下一个补丁/发布之前,无法在客户站点更新DLL)
Mar*_*kus 10
这似乎是不可能的.请看这里:为什么Visual Studio需要调试器符号文件与它们构建的二进制文件完全匹配?
或者这篇文章:PDB文件:每个开发人员必须知道什么
引用"PDB文件:每个......":
最重要的部分是调试器如何知道这是该二进制文件的完全匹配的PDB文件.这是通过嵌入在PDB文件和二进制文件中的GUID完成的.如果GUID不匹配,您肯定不会在源代码级别调试模块.
.NET编译器和本机链接器将此GUID放入二进制文件和PDB中.由于编译行为会创建此GUID,因此请暂停并考虑这一点.如果您有昨天的构建并且没有保存PDB文件,您是否能够再次调试二进制文件?没有!这就是为每个构建保存PDB文件至关重要的原因.因为我知道你在考虑它,所以我会继续回答你脑海中已形成的问题:不,没有办法改变GUID.