停止调试(Shift+F5)会导致调试重新启动

8
我正在使用Visual Studio 2008专业版进行开发。我发现每当我使用Ctrl + F5测试Web应用程序或网站,然后停止调试(或关闭浏览器),调试会重新开始,就像我再次按下了Ctrl + F5一样。
起初我认为这可能是由于粘滞的Ctrl键引起的,但我已经检查并确认我的机器上未启用粘滞键。
我在网上搜索并发现许多其他人也遇到了同样的问题。但是微软表示该问题是由于粘滞的Ctrl键引起的。(参考:http://connect.microsoft.com/VisualStudio/feedback/details/534915/stop-debugging-shortcut-key-shift-f5-causes-debugging-to-restart-instead-of-just-stopping
如果有人对此有任何其他想法(以防我可能错过了某些更新的论坛),请告诉我。
非常感谢! :)

1
与 Visual Studio 2010 也会发生。 - user2320724
和Visual Studio 2012 - mchar
5个回答

5

我非常喜欢你的问题,因为我有时也会遇到这种情况,多年过去了仍然不知道原因,也不认为与粘滞键有关。

在这种情况下,我只有两种方法可以停止调试:

  1. Alt + D; E = 我按下 Alt + D 打开“调试”菜单,然后按下 E 键选择“停止调试”。这是另一种可行的热键组合。
  2. 点击调试工具栏上的停止按钮。
  3. (可选) 有时当我无法按下 Alt + D 时,我无法将焦点放在工具栏上,然后我按下 ctrl 5 次。不知何故,即使我没有打开粘滞键,粘滞键仍然会被卡住。

希望对你有所帮助。


1
嗨 Catto,当我使用调试菜单停止调试时,它不会重新启动。但是当我使用停止调试的快捷键(shift-F5)时,调试会重新启动。无论如何,感谢您的回复 :) - Amogh Natu

1
我有时也会遇到这种情况,禁用了 StickyKeys 后还会出现。甚至在锁定了计算机后也会出现。当这种情况发生时,我尝试输入密码,但计算机表现得好像我按下了 Ctrl 键。
我的唯一建议是使用菜单停止调试,然后轻轻地敲击两次 Ctrl 键,然后再尝试。每次我这样做时它都会停止。
在我内心深处,我想知道是否由于第三方实用程序拦截键组合触发器而导致冲突。SnagIt、Freesnap、AutoHotKey是我使用的三个实用程序,但当问题如此间歇性时,你不能真正地将它们禁用并说:“是的,我的问题消失了。”

0
这可能听起来很简单,对你来说可能不是答案,但对我来说却是。在 Visual Studio 2015 中,我的 Shift+F5 映射到了“Debug.Restart”,而“Debug.StopDebugging”被重新映射为 Ctrl+Alt+Break。不确定是否是 Resharper 搞乱了快捷键。
我通过转到“工具...选项...环境...键盘”,搜索“Debug.StopDebugging”并将 Shift+F5 分配给它来解决了这个问题。

0

我也曾遇到过同样的问题。我也使用的是Visual Studio 2008。只需点击“工具”>>“选项”>>“环境”>>“键盘”。然后设置即可。

this option

设置为“默认”。


我不知道为什么这个答案得了-1分。在我的VS 2019中它是有效的。 - LyuboBG

0

当我将VS升级到灾难性的16.6.x版本后,Shift-F5从Debug.stop变成了Debug.start,这也发生在我身上。

在“工具”菜单中,选择“选项”,再在“键盘”中进行修复即可。(这是一个令人困惑的对话框,但你会搞定的——作为程序员,你的智商肯定过人,对吧?)

Shift-Ctrl-F5用于重启。

我已经从事编程50年了,仍然热爱它并且赚了大笔钱。这是多么美好的职业啊!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接