我有一个程序,用于生成异常的小型转储。我已存档.exe,.pdb和源文件的副本。我发现让Visual Studio找到.pdb文件并在从客户端收到转储时分析转储的唯一方法是将归档文件放在与磁盘上原始版本完全相同的位置
我尝试将.pdb文件的路径添加到Visual Studio的调试符号目录中,但始终忽略该路径。似乎使用了.exe文件中的路径。
这非常不方便,因为它意味着将当前正在开发的代码移动到某个临时位置,而归档代码则代替崩溃转储分析。
是否有一些简单的方法(即没有设置符号和源服务器)来指示Visual Studio访问原始构建位置以外的某个位置的调试上下文?
答案 0 :(得分:1)
您需要的是符号服务器或至少具有相同结构的目录。如果您有TFS,则可能需要正确配置它。
如果没有,您有以下选择:
a)使用symstore
为每个交付的版本手动添加符号
湾在后期构建步骤中使用symstore
为每个构建自动添加符号
c)a)或b)中的任何一个,并将结果发布到充当HTTP符号服务器的Web服务器上。
如果你是独自工作,你可以做a)或b)。如果你在一个团队中工作,你应该考虑c)。
事情并非如此简单,Stack Overflow并没有考虑编写完整的教程。因此,我给你以下提示:
您需要了解符号路径可以有多个层。您当前正在使用0层符号存储,这是一个平面目录。这是最糟糕的选择。好消息:如果你有符号,你仍然可以设置其他层类型。
一旦你理解了关于这些层的第1点,并且想要在没有TFS的情况下选择c),那就构建一个HTTP服务器。
恕我直言,你应该在How to get a symbol server set up找到所有必要的信息。如果您不想在网络上使用它,也可以将其放在本地磁盘上。