CreateToolhelp32Snapshot用于获取系统内指定进程的快照,也可以获取被这些进程使用的堆、模块和线程的快照。
HANDLE WINAPI CreateToolhelp32Snapshot(
DWORD dwFlags, //指定“快照“中需要返回的对象
DWORD th32ProcessID //进程ID号
);
dwFlags指定了获取的列表的类型,其值可能是:
TH32CS_SNAPHEAPLIST/_SNAPMODULE 枚举th32ProcessID参数指定的进程中的堆/模块
TH32CS_SNAPPROCESS/_SNAPTHREAD 枚举系统范围内的进程/线程,忽略th32ProcessID
函数执行成功后将返回一个快照句柄,否则返回INVALID_HANDLE_VALUE(-1)。
从快照列表中获取进程信息可以使用Process32First和Process32Nextt函数,函数的每次调用仅返回一个进程的信息,无剩余信息时则返回FALSE。函数的第一个参数是快照句柄,第二个参数是指向PROCESSENTRY32结构的指针,进程信息将会返回到这个结构中。使用该结构之前,应设置它的大小。