c++获取进程的PID
时间: 2024-03-30 22:11:55 浏览: 75
在C++中,可以使用Windows API函数`GetCurrentProcessId()`获取当前进程的PID。示例如下:
```c++
#include <iostream>
#include <Windows.h>
int main() {
DWORD pid = GetCurrentProcessId();
std::cout << "Current process PID: " << pid << std::endl;
return 0;
}
```
如果需要获取其他进程的PID,可以使用Windows API函数`OpenProcess()`打开该进程的句柄,然后使用`GetProcessId()`获取该进程的PID。示例如下:
```c++
#include <iostream>
#include <Windows.h>
int main() {
DWORD pid = 0;
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, pid); // 打开进程句柄
if (hProcess) {
DWORD pid = GetProcessId(hProcess); // 获取进程PID
std::cout << "Process PID: " << pid << std::endl;
CloseHandle(hProcess); // 关闭进程句柄
}
return 0;
}
```
需要注意的是,使用`OpenProcess()`打开进程句柄需要具有足够的权限,否则会返回`NULL`。
阅读全文