#include "stdafx.h"
#include <windows.h>
#include <stdio.h>
#include <tlhelp32.h>
int main(int argc, char* argv[])
{
PROCESSENTRY32 snapshot;
snapshot.dwSize=sizeof(snapshot);
HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if(hProcessSnap==INVALID_HANDLE_VALUE)
{
printf("ERROR!");
return -1;
}
BOOL bMore=::Process32First(hProcessSnap,&snapshot);
while(bMore)
{
printf("进程名称:%s\n",snapshot.szExeFile);
printf("进程ID:%s\n\n",snapshot.th32ProcessID);
bMore=::Process32Next(hProcessSnap,&snapshot);
}
::CloseHandle(hProcessSnap); return 0;
}
可以运行,但是显示进程system的时候就不能显示它的ID,这是为什么?