如何获取所有进程ID?

时间:2012-09-24 09:44:24

标签: c++ windows visual-c++

  

可能重复:
  Windows API's which will show the running processes

all process id in process Hacker

如何获取iexplorer.exe的所有进程的进程ID?当我在iexplorer.exe进程中注入我的DLL时,getcurrentprocessid()正在获取父进程ID。

我该怎么做?

1 个答案:

答案 0 :(得分:3)

最好的方法是枚举系统上的所有进程,然后选择那些IE进程。有几种简单的方法可以获取有关系统上运行的所有进程的信息:

    来自PSAPI的
  1. EnumProcesses。这可能是最简单的,但没有提供太多信息;您需要使用其他API来收集所需的信息(OpenProcess / GetModuleFileNameEx)。
  2. 来自TlHelp32.h的
  3. CreateToolhelp32Snapshot(然后是Process32FirstProcess32Next)。使用起来非常简单,并自动为您提供EXE名称,以便您可以轻松判断它是否为iexplorer.exe。
  4. WMI,正如@nogard已经提到的那样。