winapi – 从进程ID获取进程名称(win32)

前端之家收集整理的这篇文章主要介绍了winapi – 从进程ID获取进程名称(win32)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要得到Windows系统上所有进程的列表,包括名称和PID。
EnumProcess可以获得一个pid列表,但是如何从pid获取进程名称?我不想在进程上调用OpenProcess,因为这并不总是工作(就像其他进程由不同的用户运行一样)。
Ý您可以使用 ToolHelp API获取所有正在运行的进程的进程标识符和名称
以下代码显示每个进程的pid和名称
void showProcessInformation() {
    HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    if(hSnapshot) {
        PROCESSENTRY32 pe32;
        pe32.dwSize = sizeof(PROCESSENTRY32);
        if(Process32First(hSnapshot,&pe32)) {
            do {
               printf("pid %d %s\n",pe32.th32ProcessID,pe32.szExeFile);
            } while(Process32Next(hSnapshot,&pe32));
         }
         CloseHandle(hSnapshot);
    }
}
原文链接:https://www.f2er.com/windows/372285.html

猜你在找的Windows相关文章