Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 用VisualStudio调试源代码索引软件是一件痛苦的事情_Visual Studio_Debugging - Fatal编程技术网

Visual studio 用VisualStudio调试源代码索引软件是一件痛苦的事情

Visual studio 用VisualStudio调试源代码索引软件是一件痛苦的事情,visual-studio,debugging,Visual Studio,Debugging,我负责一些内部工具,我希望在客户机上尽可能轻松地调试它们。我们曾经提供完整的源代码和调试信息,并将它们构建在与典型客户端安装路径完全相同的位置。这使得调试非常容易 现在,我们已经开始使用Windows Installer来部署我们的软件,并为PDB提供调试信息和源代码索引 这使得调试成了一件痛苦的事情,对于我想要调试的每个客户机,我必须在VisualStudio中更改几个选项以启用源代码索引,并在VisualStudio目录中添加一个文件以阻止它抱怨运行源代码管理命令。我也不能轻易地搜索源代码,

我负责一些内部工具,我希望在客户机上尽可能轻松地调试它们。我们曾经提供完整的源代码和调试信息,并将它们构建在与典型客户端安装路径完全相同的位置。这使得调试非常容易

现在,我们已经开始使用Windows Installer来部署我们的软件,并为PDB提供调试信息和源代码索引

这使得调试成了一件痛苦的事情,对于我想要调试的每个客户机,我必须在VisualStudio中更改几个选项以启用源代码索引,并在VisualStudio目录中添加一个文件以阻止它抱怨运行源代码管理命令。我也不能轻易地搜索源代码,因为这些文件只是按需提取的

有没有更好的办法?我曾尝试在网络共享上托管源代码的存档,并使用符号链接将网络共享与本地硬盘驱动器别名,但这需要UNC路径,VS2008清单工具无法处理

我们还使用了一个未记录的链接器选项(/sourcemap),它允许您将所有源路径重定向到任意位置,但这不适用于.Net应用程序(因为该选项可用于link.exe)

即使我们在安装时提供了源代码,PDB中的路径仍然是错误的


有没有办法修补PDB(Microsoft支持或不支持)以将路径重定向到其他地方?

我无法直接回答您的问题,但也许我可以用元答案启发您

在生产环境中进行调试从根本上讲是错误的。其他人也尝试过(脑海中浮现的是网景),但惨遭失败。对于类似于工具的东西,更重要的是通过可靠的单元测试和自动测试来确保正确的功能。您可以设置您的测试,以使用不同的输入质量(从完美的教科书到中等到差到糟糕)和数量(即测试限制)。关于测试,尤其是单元测试,有很多可用的方法

我明白要从日常生活中获得这样的工作是很困难的(我自己也深陷其中),但这是最明智的,如果不是唯一明智的出路的话