フォーカスのあるウィンドウハンドルを求めるには以下の様にする.
HWND GetFocusWindow()
{
HWND hWin;
HWND hWndReturn;
int TID, PID, MyID;
MyID = GetCurrentThreadID();
hWin = GetForegroundWindow();
TID = GetWindowThreadProcessID( hWin, &PID );
if( AttachThreadInput( TID, MyID, TRUE ) ) {
SetForgroundWindow( hWin );
hWndReturn = GetFocus();
AttachThreadInput( TID, MyID, FALSE );
} else {
hWndReturn = NULL;
}
}
参照