// 获取所有进程ID
if (EnumProcesses(processes, sizeof(processes), &bytesReturned)) {
DWORD numProcesses = bytesReturned / sizeof(DWORD);
for (DWORD i = 0; i < numProcesses; ++i) {
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, processes[i]);
if (hProcess != NULL) {
TCHAR processPath[MAX_PATH];
if (GetModuleFileNameEx(hProcess, NULL, processPath, MAX_PATH)) {
std::cout << "Process ID: " << processes[i] << ", Root Directory: " << processPath << std::endl;
}
CloseHandle(hProcess);
}
}
}
return 0; |