首页
社区
课程
招聘
[求助]父进程和子进程
发表于: 2009-1-17 19:03 5070

[求助]父进程和子进程

2009-1-17 19:03
5070
A.exe运行起来之后点击某个按钮启动b.exe,那这个b.exe进程的父进程是不是a.exe?

谢谢

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (7)
雪    币: 1632
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
补充:a.exe和b.exe在processexplorer里面显示不是进程树的关系。
2009-1-17 19:06
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
3
善用搜索引擎,可以节省很多时间。

Windows系统是弱化“进程树”的概念的。如果查看系统进程,你就会知道本来shell进程应该是大部分用户进程的父进程,但并不显示其为父进程。

父进程将子进程的相关句柄(进程对象和线程对象等)关闭,内核就认为它们不再有父子关系。

参考资料:

d9bK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8U0j5I4i4K6u0W2x3e0M7^5i4K6u0W2x3e0j5H3i4K6u0W2y4#2)9J5c8Y4A6B7K9Y4V1I4i4K6u0r3M7Y4g2S2L8X3A6A6j5h3&6C8j5h3W2X3j5h3N6G2L8X3N6B7N6g2)9J5c8X3c8*7K9X3q4Q4x3V1j5J5i4K6u0W2M7s2m8@1
2009-1-17 19:25
0
雪    币: 1632
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
版主能不能用一个字或两个字回答?
是或不是?

我没看懂啊
2009-1-17 19:49
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
5
这本来就是一个不能简单地用“是或不是”回答的问题。

他们是不是“父子”关系,完全取决于A进程的行为

只能这样讲,A创建B,它们本是父子关系。A进程既可以保留这样的关系,也可以通过关闭相关句柄的方式来断开这种“父子”关系。

你在ProcessExplorer中看到它们没有列在一个进程树当中,就说明A进程创建B以后,剪断了与B的“父子”关系了。

Windows下“父子”进程的概念并不像*nix中那么重要,只要有相应权限的进程都可以打开其它进程与之通信。
2009-1-17 22:38
0
雪    币: 1632
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
先谢啦
有点明白了
2009-1-17 23:46
0
雪    币: 254
活跃值: (126)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
儿子可不可以强行断绝父子关系啊
2009-1-18 08:14
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
8
可以,eprocess->parentprocessid
2009-1-18 18:56
0
游客
登录 | 注册 方可回帖
返回