Parts of my application are in C++ under windows. I need the process id for the current process. Any thoughts?
The GetCurrentProcessId
function will do this.
_getpid()
- msdn.microsoft.com/en-us/library/t2y34y40%28v=vs.80%29.aspx –
Renal _getpid()
just calls GetCurrentProcessId()
. There is only one process id, and the lowest level function that returns it is GetCurrentProcessId()
. –
Elyn Having grown accustomed to seeing yards and yards of code to accomplish seemingly straightforward tasks, I was pleasantly surprised at the directness of GetCurrentProcessId
. Earlier today, I watched it run in a debugger, when I was following a new bit of code in a DllMain
routine that combines the process ID with an embedded GUID to create a locally unique name for a mutex.
Following is the entire routine, all three machine instructions.
mov eax,fs:[00000018]
mov eax,dword ptr [eax+20h]
ret
BTW, two other blessedly simple Windows API functions are GetLastError
and SetLastError
; indeed, both are quite similar to this one.
You can use getpid()
or _getpid()
, which are defined in <process.h>
library.
https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/getpid?view=vs-2019
_getpid()
just calls GetCurrentProcessId()
, which is the lowest level function that returns the process id. –
Wellspring GetCurrentProcessId()
but I couldn't run it, because I had not included <windows.h>
library, which was not mentioned in the previous answer. After some tries I got it. –
Incommunicable © 2022 - 2024 — McMap. All rights reserved.