ms c ++得到当前进程的pid

时间:2008-11-18 09:34:31

标签: c++ windows process pid

我的应用程序的一部分是在Windows下的C ++中。我需要当前进程的进程ID。有什么想法吗?

3 个答案:

答案 0 :(得分:39)

GetCurrentProcessId功能会执行此操作。

答案 1 :(得分:6)

我已经习惯于看到码和码的代码来完成看似简单的任务,我对GetCurrentProcessId的直接性感到惊喜。今天早些时候,当我在DllMain例程中跟踪一小段代码时,我看到它在调试器中运行,该例程将进程ID与嵌入式GUID组合在一起,为互斥锁创建本地唯一名称。

以下是整个例程,所有三个机器指令。

mov         eax,fs:[00000018]
mov         eax,dword ptr [eax+20h]
ret

顺便说一下,另外两个有趣的简单Windows API函数是GetLastErrorSetLastError;实际上,两者都非常相似。

答案 2 :(得分:0)

您可以使用getpid()库中定义的_getpid()<process.h>

https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/getpid?view=vs-2019