How do you get a process ID from its window handle (hwnd)?
Nevermind I found it. For anyone who wants to know:
The GetWindowThreadProcessId function retrieves the identifier of the thread that created the specified window and, optionally, the identifier of the process that created the window. This function supersedes the GetWindowTask function.
HWND hWnd, // handle of window
LPDWORD lpdwProcessId // address of variable for process identifier
Identifies the window.
Points to a 32-bit value that receives the process identifier. If this parameter is not NULL, GetWindowThreadProcessId copies the identifier of the process to the 32-bit value; otherwise, it does not.
The return value is the identifier of the thread that created the window.
This function replaces the GetWindowTask function of Windows version 3.x.