GetProcessId function (processthreadsapi.h)

Retrieves the process identifier of the specified process.

Syntax

DWORD GetProcessId(
  [in] HANDLE Process
);

Parameters

[in] Process

A handle to the process. The handle must have the PROCESS_QUERY_INFORMATION or PROCESS_QUERY_LIMITED_INFORMATION access right. For more information, see Process Security and Access Rights.

Windows Server 2003 and Windows XP:  The handle must have the PROCESS_QUERY_INFORMATION access right.

Return value

If the function succeeds, the return value is the process identifier.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

Until a process terminates, its process identifier uniquely identifies it on the system. For more information about access rights, see Process Security and Access Rights.

Requirements

Requirement Value
Minimum supported client Windows Vista, Windows XP with SP1 [desktop apps | UWP apps]
Minimum supported server Windows Server 2003 [desktop apps | UWP apps]
Target Platform Windows
Header processthreadsapi.h (include Windows.h on Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib
DLL Kernel32.dll

See also

GetCurrentProcessId

GetProcessIdOfThread

GetThreadId

Processes