Re: My app's window class
"SteveR" <maxsrussellatremovethisembarqmail.com> wrote in message
news:exAKpNtuIHA.2068@TK2MSFTNGP05.phx.gbl...
I'm fishing around for examples for how to register my CMainFrame class.
I'm looking at this right now:
BOOL CSampleApp::InitInstance()
{
/********************************************************************/
// If a previous instance of the application is already running,
// then activate it and return FALSE from InitInstance to
// end the execution of this instance.
CWnd *pWndPrev;
// Determine if another window with your class name exists...
if (pWndPrev = CWnd::FindWindow(_T("WCE_MyNewClass"),NULL))
{
// Bring previous instance to the foreground
pWndPrev->SetForegroundWindow();
return FALSE;
}
WNDCLASS wndcls;
memset(&wndcls, 0, sizeof(WNDCLASS)); // start with NULL defaults
wndcls.style = CS_DBLCLKS | CS_HREDRAW | CS_VREDRAW;
wndcls.lpfnWndProc = ::DefWindowProc;
wndcls.hInstance = AfxGetInstanceHandle();
wndcls.hIcon = LoadIcon(IDR_MAINFRAME); // or load a different icon
wndcls.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
wndcls.lpszMenuName = NULL;
// Specify your own class name for using FindWindow later
wndcls.lpszClassName = _T("MyNewClass");
// Register the new class and exit if it fails
if(!AfxRegisterClass(&wndcls))
{
AfxMessageBox(_T("Class Registration Failed\n"));
return FALSE;
}
/********************************************************************/
// Other code here...
}
How much of that applies to what I need to do?
You need all of it. I have a working code very much like this (from several
years ago) and it has this difference:
wndcls.lpfnWndProc = AfxWndProc;
I think you will need that so MFC will receive the messages.
--
Scott McPhillips [VC++ MVP]