【发布时间】:2023-03-19 19:06:02
【问题描述】:
我负责一些内部工具,我希望在客户端计算机上尽可能轻松地调试它们。我们曾经提供完整的源代码和调试信息,并将它们构建在与典型客户端安装路径完全相同的位置。这使得调试变得非常容易。
我们现在已经开始使用 Windows Installer 来部署我们的软件,并且我们为 pdbs 提供调试信息和源索引。
这现在让调试变得很痛苦,对于我要调试的每个客户端,我必须更改 Visual Studio 中的几个选项以启用源索引并将文件添加到 Visual Studio 目录中以阻止它抱怨运行源控制命令。我也无法轻松搜索源代码,因为文件只是按需提取。
有没有更好的方法可以做到这一点?我曾尝试在网络共享上托管源代码的存档,并在构建时使用符号链接将网络共享与本地硬盘驱动器建立别名,但这需要 UNC 路径,而 VS2008 清单工具无法处理。
我们还使用了一个未记录的链接器选项 (/sourcemap),它允许您将所有源路径重定向到任意位置,但这不适用于 .Net 应用程序(因为该选项可用于 link.exe)
即使我们在安装时提供了源代码,PDB 中的路径仍然是错误的。
有没有办法修补 PDB(Microsoft 支持或不支持)以将路径重定向到其他地方?
【问题讨论】: