使用Visual Studio进行远程调试时是否可以设置断点?

时间:2009-12-08 23:15:03

标签: c# visual-studio remote-debugging

我能够连接到远程计算机并调试并查看源代码,但是当我设置一个断点时,Visual Studio不会破坏它。

那么有什么需要做的吗? 或者在远程调试时是否根本无法使用断点?

3 个答案:

答案 0 :(得分:10)

是的。在连接到远程站点时,您需要确保PDB(带有行信息的调试信息)存在并加载到调试器中,因为没有它,调试器无法将源行与字节码偏移相关联,这是设置断点所必需的。

答案 1 :(得分:3)

快速回答是,但是有许多不同的事情可能会阻止触发点。很久以前我发布这个清单作为另一个问题的答案,现在可能对你有所帮助:

Why does my C# debugger skip breakpoints?

特别检查断点的图形是否为实线(表示如果到达断点应该被击中)或者断点只是一个空白的圆圈,旁边有一个小感叹号 - 如果你得到的话感叹号然后检查你悬停在它上面时得到的工具提示,它可能会告诉你问题是什么。

最后,完全可以调试RELEASE构建,但是你需要确保在构建时生成符号 - 这些符号可以在外部文件(.pdb)中,或者有时它们可​​以嵌入到装配本身(虽然我自己从未这样做过)

答案 2 :(得分:-1)

是的,你可以。使用F9创建断点。远程调试时请注意以下内容。

远程调试器没有遇到断点的原因有两个

  1. 错误的符号。

  2. 在调试时使用错误的.Net框架(您可以在visual studio中的“附加到进程”窗口中选择)。