从C#确定父进程ID

时间:2009-04-22 04:23:34

标签: c# .net winapi

我想确定Windows中任意进程的父进程的进程ID。

我需要这个方法才能在x64和x32上工作。

任何想法/示例代码都可以实现这一目标。 System.Diagnositics.Process不包含此信息。

我有点担心使用toolhelp apis,因为它们是32位特定的。

相关信息:

the FAQ中的效果计数器解决方案: (PerformanceCounter(“Process”,“Creating Process ID”,procName);)让我害怕,因为它不允许你输入进程id,而是你按名称指定进程,所以当你有多个时它都可以变成梨形状儿童。

2 个答案:

答案 0 :(得分:2)

WIN32_Process有processid和parent processid。在64位上获取WMI数据有点困难,but still possible by changing the provider flags

答案 1 :(得分:-1)

使用NAPI(Win32常见问题解答)