Visual Studio即时调试器未找到已打开的实例
我有一个C#控制台应用程序,由外部程序调用,为其提供命令行参数。 为了简化调试,我创建了一个条件方法,我立即在Main()
调用:
[System.Diagnostics.Conditional("DEBUG")] static void BreakIfInDebugMode() { System.Diagnostics.Debugger.Break(); }
在外部程序中,当我想调试时,我将外部调用指向我的.exe的bin\Debug
位置,弹出Visual Studio Just-In-Time Debugger窗口,然后选择我的Visual Studio实例我目前正在用来做开发。
除此之外,从今天开始,当前正在运行的Visual Studio实例不会出现。 我只能选择启动一个新实例。 即使我通过调试器提示启动的新实例也不会在我保持运行时显示。 这是一个巨大的麻烦,因为我已经运行了一个打开项目的实例,并且已经设置了我想要调试的代码的断点。
我注意到从“关闭程序/调试程序”到“选择Visual Studio对话框实例”需要比平时更长的时间。 为什么调试器选择没有找到我已在运行的调试器的任何解决方案?
编辑:执行重新启动后,恢复了预期的行为。 通过不那么激烈的措施来修复仍然是件好事。
也许该进程以管理员身份运行,而VS则不是。 这是我的问题。
请检查您是否在visual studio中启用了名为“Managed”和/或“Native”的复选框:
工具- >选项- > Debugging->刚刚在时间
我最近遇到了这个问题,我不小心禁用了这些复选框。 它可能与您的问题无关,因为它在重新启动后正在工作。 我只是张贴这个,以便其他人可能会发现它有用。
除了已经发布在这个页面上的两个不同的答案,似乎这个问题正在(短暂)回归。 但是在这个时候它是Visual Studio 2017
早期版本中的一个真正的错误 。
无论如何 – 不需要恐慌,它已经在Visual Studio 2017 Version 15.3 preview 2
修复 。 只需确保您使用此版本或更高版本。
有关详细信息,请参阅源 。