.net程序运行的时候为什么还有一个同名的.vshost32.exe?

ioiawere 2014-08-24 10:14:02
启动任何一个.net程序的时候都会启动一个相应名称的.vshost32.exe程序。这个额外的程序是必要的吗?
--> 我发现.net程序被我从进程管理器里面强行结束的时候,这个.vshost32.exe程序还在。我想如果是父子进程关系的话,是不是应该主程序退出了,这个vshost32.exe如果是子程序,应该也会退出?
--> 如果在主程序运行期间,我尝试强行关闭.vshost32.exe这个进程,则会弹出下面这个错误提示对话框:

即使我选择了结束进程,在任务管理器当中,这个进程消失了1-2秒之后又会再次出现,就像是个幽灵一样,这到底是为什么呢,杀都杀不死?

...全文
479 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuyongpeng 2017-03-14
  • 打赏
  • 举报
回复
这是托管进程
武动金城 2014-08-25
  • 打赏
  • 举报
回复
正常现象,不用管,不用关,要关关Visual Studio
武动金城 2014-08-25
  • 打赏
  • 举报
回复
总之,正常现象,这个是启动VS IDE出来的,估计是调试用途 有时候为了获取命令行参数,我还特别考虑去除掉exe路径,F5调试运行时,获取的命令行中EXE的路径,就是.vshost32.exe 编译之后,关闭VS,直接双击运行编译好的EXE,不会有这个进程
ima_zhan 2014-08-25
  • 打赏
  • 举报
回复
原来是宿主进程
by_封爱 版主 2014-08-25
  • 打赏
  • 举报
回复
F5的时候就有 如果双击exe就没有.. 可能是VS调试exe需要的东西吧 否则他们之间都没关联..
ioiawere 2014-08-25
  • 打赏
  • 举报
回复
引用 1 楼 sp1234 的回复:
http://msdn.microsoft.com/zh-cn/library/vstudio/ms242202(v=vs.110).aspx
谢谢。 为什么调试VC的本地代码的时候,不需要这样的一个宿主进程? 用windbg调试的时候(不用ide),好像也不需要创建一个宿主进程啊。 这个宿主进程是给VS用的吗?
threenewbee 2014-08-24
  • 打赏
  • 举报
回复

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧