Vista Ultimate 64中的VS2005 SP1断点不起作用

时间:2008-10-29 21:53:00

标签: c# visual-studio-2005 vista64

我刚迁移到Windows Ultimate 64 SP1,因为我的系统硬盘崩溃了。我安装了Visual Studio 2005 SP1以及Microsoft推荐的所有补丁。我终于从我的SCM获得了我的源代码,但现在调试并没有停止在我设置的任何断点上。这只是一个简单的Winforms应用程序,没什么特别的。

我做的第一件事就是将构建目标更改为x86。没有骰子。然后我去下载了针对x64的调试工具,仍然没有骰子。我将调试器设置为中断处理和未处理的所有异常。没有骰子。

我一直在关注Google搜索结果,但也没有运气。我已经在这3天了,没有运气。有没有人以前处理过这个问题?

更新

项目都设置为Debug(x86)。

调试会话开始时,断点保持正常。

我已经重新安装了,但也没有用。

我以管理员身份运行并关闭了UAC。

我使用“附加到进程”附加到项目,我能够以这种方式进入代码。我希望找出为什么它不是自动附加,以避免每次都必须手动执行此操作。

4 个答案:

答案 0 :(得分:1)

几个问题。

当您的代码启动时,断点是否变成一个空圆圈,其工具提示表明断点不会被命中?或者它是否成为一个带有工具提示的完整圆圈,表明它附加到的过程?

您可以尝试手动附加调试器以查看是否有任何牵引力。只需启动应用程序,一旦运行,请转到调试菜单并选择“附加到进程” - 选择运行应用程序的进程,然后单击“附加”。

我运行没有问题的Vista64 - VS2008。

答案 1 :(得分:1)

这列为known issue for VS2005 on Vista (Via MSDN):

  

标题:即时(JIT)调试   提升的过程将失败

     

说明:提升的流程不能   由VS 2005进行JIT调试。这个   包括系统进程,例如   IIS和应用程序启动   选择“以管理员身份运行”。

     

解决方法:调试器必须是   在调试器之前手动附加   将捕获未处理的异常或   用户断点   (System.Diagnostics.Debugger.Break,   __debugbreak等。)

答案 2 :(得分:0)

我在Windows Server 2008 x64和Vista x64 SP1上使用具有相同补丁级别的Visual Studio 2005,没有任何问题。

您是否以管理员身份运行它?当所有其他方法都失败时,请尝试卸载并重新安装。

答案 3 :(得分:0)

确保项目设置为调试编译而不是发布编译,因为发布编译不包含调试信息。