Revision: 46235
Updated Code
at May 14, 2011 07:03 by jimfred
Updated Code
static HWND hWnd2 = (HWND)-1;
HWND hWnd = ::GetForegroundWindow();
if ( hWnd2==hWnd )
{
return;
}
hWnd2 = hWnd;
int slength = ::GetWindowTextLength(hWnd) + 1; // length of its title bar text
CString wintext;
::GetWindowText(hWnd, wintext.GetBufferSetLength(slength), slength); // get title bar text
wintext.ReleaseBuffer();
DWORD dwProcessIdFocus;
// Use Windows API GetWindowThreadProcessId to find the window's process ID.
GetWindowThreadProcessId( hWnd, &dwProcessIdFocus );
// Use Windows API GetCurrentProcessId to find 'this' process ID.
DWORD dwProcessIdParent = GetCurrentProcessId();
bool thisAppHasFocus = dwProcessIdFocus==dwProcessIdParent;
CString msg;
msg.Format(
"%s%s
"
"HWND: 0x%X
"
"Process ID: %d",
wintext.GetLength() ? wintext : "(null)",
thisAppHasFocus ? " (me)" : "",
hWnd,
dwProcessIdFocus
);
Revision: 46234
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at May 14, 2011 07:00 by jimfred
Initial Code
static HWND hWnd2 = (HWND)-1;
HWND hWnd = ::GetForegroundWindow();
if ( hWnd2==hWnd )
{
return;
}
hWnd2 = hWnd;
int slength = ::GetWindowTextLength(hWnd) + 1; // length of its title bar text
CString wintext;
::GetWindowText(hWnd, wintext.GetBufferSetLength(slength), slength); // get title bar text
wintext.ReleaseBuffer();
DWORD dwProcessIdFocus;
// Use Windows API GetWindowThreadProcessId to find the window's process ID.
GetWindowThreadProcessId( hWnd, &dwProcessIdFocus );
// Use Windows API GetCurrentProcessId to find 'this' process ID.
DWORD dwProcessIdParent = GetCurrentProcessId();
bool thisAppHasFocus = dwProcessIdFocus==dwProcessIdParent;
Initial URL
Initial Description
Determine if 'this' app has focus. Using MFC.
Initial Title
MFC, Determine if \'this\' app has focus
Initial Tags
Initial Language
C++