#include<windows.h>
#include<tlhelp32.h>
#include<stdio.h>
int main(int argc,char*argv[])
{
int cnt;
PROCESSENTRY32 pe32;
pe32.dwSize=sizeof(pe32);
HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if(hProcessSnap==INVALID_HANDLE_VALUE)
{
printf("CreateToolhelp32Snapshot调用失败! /n");
return -1;
}
BOOL bMore=::Process32First(hProcessSnap,&pe32);
cnt=0;
while(bMore)
{
printf("进程名称:%-20s PID:%u /n",pe32.szExeFile,pe32.th32ProcessID);
cnt++;
bMore=::Process32Next(hProcessSnap,&pe32);
}
printf("共有%d个进程/n",cnt);
::CloseHandle(hProcessSnap);
return 0;
}