我安装了Visual Studio 2005(带SP1)并将默认设置设置为C ++所需的设置。
现在我打开一个解决方案并运行exe。 在“工具”菜单项下,我选择“附加过程”,然后将其附加到我刚运行的exe。我在代码中放置了几个断点(这个断点看起来已启用),这些断点应该被命中。 但由于某种原因,我的断点没有被击中。
PS:所有pdb都存在于正确的位置。
我缺少任何设置吗?
答案 0 :(得分:5)
也许它附加在“错误的”代码上。
在“附加到进程”对话框中,有一个设置允许您选择要调试的代码类型。尝试单击“附加到”文本框旁边的“选择”按钮,仅检查“托管代码”相关代码类型。
http://img204.imageshack.us/img204/3017/capture5ct4.png
大部分时间,让“自动确定要调试的代码类型”设置为我工作。但是,在某些情况下,调试器无法理解我想要附加到托管代码(例如,如果我从批处理文件中启动了我的应用程序),并且当它这样做时,上述解决方案对我有用。 / p>
答案 1 :(得分:1)
您是否处于调试模式?当我试图在发布模式下执行此操作时,我遇到了这个问题。它没有抱怨,它只是没有达到断点。
答案 2 :(得分:1)
使用模块视图查看是否加载了exe / dll,如果没有,则指定加载PDB的位置。