枚举系统进程核心代码

包含头文件:
#include "tlhelp32.h"
示例:

void CTerminateProcessDlg::OnGetProcess() 
{    
    m_ListBox.ResetContent();
    CString m_output;
    HANDLE hProcessSnap=NULL;
    PROCESSENTRY32 pe32={0};
    hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    if(hProcessSnap==(HANDLE)-1)
    {
        ::MessageBox(NULL,"查询进程失败!:(","错误提示",MB_OK);
    
    }
    pe32.dwSize=sizeof(PROCESSENTRY32);
    if(Process32First(hProcessSnap,&pe32))
    {
        do
        {
            m_output.Format("%-20s     ID:%-5d",pe32.szExeFile,pe32.th32ProcessID);
            m_ListBox.AddString(m_output);
        }
        while(Process32Next(hProcessSnap,&pe32));
    }
    else
    {
        ::MessageBox(NULL,"出现意外错误!","错误提示",MB_OK);
    }
    CloseHandle(hProcessSnap);

}

你可能感兴趣的:(枚举系统进程核心代码)