2010-11-30 38 views
57

我已经成功地让自己在我不devenv的运行实例的状态,但仍然在后台一个MyApp.vshost.exe(不可见窗口或控制台)。我不能杀MyApp.vshost.exe

我试过TaskManager,ProcessExplorer和命令行(taskkill /F /IM MyApp.vshost.exe),没有人抱怨,命令行甚至说'PID 5824停止',但它仍然存在。

我知道我可以重新启动,但我宁愿去的这条底线。

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

编辑

这是我如何进入这个咸菜:

alt text

回答

21

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

+2

他说他没有`devenv.exe`(Visual Studio)运行的实例... – Donut 2010-11-30 13:59:59

+1

是的,VS未打开:) – Benjol 2010-11-30 14:00:42

1

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

然而,荫不清楚这是怎么回事(是吗?)相关的文件锁定问题。

1

也许这就是作为https://stackoverflow.com/a/1582747/254041描述了同样的问题(待I/O进程):

MSDN API裁判说“了TerminateProcess启动终止并立即返回该停止的过程和要求中的所有线程的执行。取消所有挂起的I/O,直到所有挂起的I/O完成或取消为止,被终止的进程才能退出。“这意味着:你的I/O可以阻止这个过程(尽管我想知道它是如何使你的过程达到100%的,I/O通常不会这么做)。

81

我能够通过以下步骤(VS2010)杀了我的执着vshost过程:

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

就是这样,过程停止,也没有必要重新启动Visual工作室。