Visual Studio 2010:断点命中错误的文件

时间:2012-07-13 20:08:33

标签: visual-studio-2010 breakpoints

我没有太多希望有人能够回答这个问题,但无论如何我都会尝试:

在Visual Studio 2010中,当我单击以在任何文件中设置断点时,将打开另一个文件,并将断点设置为该文件中的相同行号。

举例说明:

  1. 我打开foo.cs
  2. 我点击在第100行添加断点
  3. VS打开bar.cs并在(错误的)第100行
  4. 上设置断点
  5. 我在微软发咒骂
  6. 与往常一样,任何帮助都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

你并不孤单!

我对Visual Studio 2015有完全相同的问题,而且非常烦人。 根据我的经验,只有当两个不同的项目(在同一个解决方案中)都包含一个同名文件时才会发生。

它与不同的PDB文件及其加载顺序有关。如果调试器可以找到具有匹配名称的文件,那么它似乎并不关心它是否在良好的PDB中找到。

可悲的是,这已在MSDN(msdn.microsoft.com/en-us/library/h6aesyw2%28v=vs.100%29.aspx)上记录了一段时间,但仍未解决。

Microsoft的解决方法是在添加断点时编写完整的文件路径,但我不认为这是一个可行的解决方案,因为它会大大减慢调试过程。

以下是其他"解决方案"我找到了:

  1. 重命名文件名(因此它们变得唯一);
  2. 删除解决方案的.SUO文件似乎在某些情况下有效(对我来说不起作用);
  3. 删除"错误"的PDB文件项目(希望你不是要同时调试它们);
  4. 更改"错误"的选项项目因此它不会生成/读取 运行时的PDB文件。
  5. 希望这有帮助!