【发布时间】:2013-12-25 16:59:27
【问题描述】:
我使用ZwQuerySystemInformation()枚举所有进程,并且可以获得有关每个进程的所有信息,我也可以获得SYSTEM_THREAD_INFORMATION。
typedef struct _SYSTEM_THREAD_INFORMATION
{
LARGE_INTEGER KernelTime;
LARGE_INTEGER UserTime;
LARGE_INTEGER CreateTime;
DWORD WaitTime;
PVOID StartAddress;
CLIENT_ID ClientId;
KPRIORITY Priority;
LONG BasePriority;
DWORD ContextSwitches;
DWORD ThreadState;
DWORD WaitReason;
} SYSTEM_THREAD_INFORMATION, *PSYSTEM_THREAD_INFORMATION;
但是这个结构不包含线程ID,为什么?我怎样才能得到这个ID?
还有一个问题:我得到SYSTEM_PROCESS_INFORMATION结构,它包含指向进程内所有线程的指针:SYSTEM_THREAD_INFORMATION Threads[1]; 但是我怎么知道这个进程中有多少个线程?
PS:我在内核模式下工作
【问题讨论】: