函数-进程遍历

/// <summary>
/// 进程遍历
/// </summary>
/// <returns></returns>
BOOL EnumProcess()
{
    PROCESSENTRY32 pe32 = { 0 };
    pe32.dwSize = sizeof(PROCESSENTRY32);
    HANDLE hProcessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);// 获取全部进程快照
    if (INVALID_HANDLE_VALUE == hProcessSnap)
    {
        ShowError(L"CreateToolhelp32Snapshot");
        return FALSE;
    }
    BOOL bRet = ::Process32First(hProcessSnap, &pe32);// 获取快照中第一条信息
    while (bRet)
    {
        printf("[%d]\t", pe32.th32ProcessID);// 显示 Process ID
        printf("[%s]\n", pe32.szExeFile);// 显示 进程名称
        bRet = ::Process32Next(hProcessSnap, &pe32);// 获取快照中下一条信息
    }
    ::CloseHandle(hProcessSnap);// 关闭句柄
    return TRUE;
}

 

posted @ 2021-12-27 17:15  梦之心  阅读(39)  评论(0编辑  收藏  举报