59

我已经设法让自己处于没有运行 devenv 实例的状态,但在后台仍然有一个 MyApp.vshost.exe(没有可见的窗口或控制台)。

我已经尝试过 TaskManager、ProcessExplorer 和命令行taskkill /F /IM MyApp.vshost.exe

我知道我可以重新启动,但我宁愿深入了解这一点。

看起来不是这个问题(http://support.microsoft.com/kb/982551),因为我可以重新启动没有问题(实际上只是有,所以无法提供任何进一步的诊断,抱歉)。

编辑

这就是我进入这个泡菜的方式:

替代文字

4

4 回答 4

89

通过执行以下步骤(VS2010),我能够终止我的持久 vshost 进程:

  1. 打开我的可执行项目的属性
  2. 在“调试”选项卡中,取消选中“启用 Visual Studio 托管进程”
  3. 保存项目文件

就是这样,进程停止了,不需要重新启动 Visual Studio。

于 2013-12-05T20:09:54.387 回答
21

这似乎是此任务的正常行为。当您杀死它时,任务将重新启动。所以我建议你关闭 Visual Studio,它会关闭 *.vshost.exe 任务。

于 2010-11-30T13:58:03.393 回答
1

在使用 .NET 2.0 作为目标框架的项目时,我遇到了同样的问题。将目标框架临时更改为 .NET 4.0 客户端为我完成了这项工作。

但是,我不确定这与文件锁定问题有什么关系(是吗?)。

于 2011-03-09T17:36:10.323 回答
1

也许这与https://stackoverflow.com/a/1582747/254041中描述的问题相同(待定 I/O 进程):

MSDN API ref 说“ TerminateProcess 启动终止并立即返回。这将停止进程内所有线程的执行并请求取消所有挂起的 I/O。在所有挂起的 I/O 完成或取消之前,终止的进程无法退出。” . 这意味着:您的 I/O 可以阻止此进程(尽管我想知道它如何使您的进程达到 100%,但 I/O 通常不会这样做)。

于 2012-08-22T08:07:14.973 回答