如何停止调试(或分离进程)而不停止进程?

问题描述:

我经常使用VS 2008来调试应用程序的.NET C#组件。有时候,我想退出调试并继续运行应用程序。停止调试会杀死我正在调试的进程。如何停止调试(或分离进程)而不停止进程?

我该如何实现我的目标?

这不是一个web应用程序,它是一个运行托管代码和非托管代码的本地进程。

我发现“分离所有”在Debug菜单选项,但它是禁用(变灰)

+0

你不小心删除了全部分离按钮吗? – CookieOfFortune 2010-04-19 23:11:17

+0

不知道它曾经存在过。我确实罚款了,但在附加到我的流程时不可用。 – Valentein 2010-04-19 23:28:58

+0

我也有同样的问题。除了杀死它之外,没有办法从调试过程中分离出来。 – 2011-03-25 15:50:48

如果您在混合模式下进行调试,则无法从进程中分离调试器。

确保您在托管或纯模式下进行调试,同时附加到进程:确保在您的项目选项中未选中“启用本地代码调试”或“本机代码”,或者在未经调试的情况下启动程序,选择“附加到进程”,并且只选择托管或仅选择本地。

调试 - >分离所有

作品在我的VS2008和VS2010很大。

+0

你的想法奏效 - 你是国王! – 2012-09-10 11:45:38

打开进程窗口(Debug-> Windows-> Processes),右键点击进程,选择“Detach Process”。

+3

不幸的是,这似乎也被禁用在混合模式下... – Cameron 2014-03-31 19:45:17