Article ID: 200440
Article Last Modified on 12/11/2003
BOOL MatchOption(LPTSTR lpsz, TCHAR ch)
{
if (lpsz[0] == '-' || lpsz[0] == '/')
lpsz++;
if (lpsz[0] == ch)
return TRUE;
return FALSE;
}
/////////////////////////////////////////////////////////////////////////////
// CSaverApp initialization.
BOOL CSaverApp::InitInstance()
{
// Standard initialization.
// If you are not using these features and want to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
Enable3dControls();
SetRegistryKey(_T("MFC Screen Savers Inc."));
if (__argc == 1 || MatchOption(__argv[1], _T('c')))
DoConfig();
else if (MatchOption(__argv[1], _T('p')))
{
CWnd* pParent = CWnd::FromHandle((HWND)atol(__argv[2]));
ASSERT(pParent != NULL);
CDrawWnd* pWnd = new CDrawWnd();
CRect rect;
pParent->GetClientRect(&rect);
pWnd->Create(NULL, WS_VISIBLE|WS_CHILD, rect, pParent, NULL);
m_pMainWnd = pWnd;
return TRUE;
}
else if (MatchOption(__argv[1], _T('s')))
{
CSaverWnd* pWnd = new CSaverWnd;
pWnd->Create();
m_pMainWnd = pWnd;
return TRUE;
}
return FALSE;
}
BOOL MatchOption(LPTSTR lpsz, LPTSTR lpszOption)
{
if (lpsz[0] == '-' || lpsz[0] == '/')
lpsz++;
if (lstrcmpi(lpsz, lpszOption) == 0) //
return TRUE;
return FALSE;
}
/////////////////////////////////////////////////////////////////////////////
// CSaverApp initialization.
BOOL CSaverApp::InitInstance()
{
// Standard initialization.
// If you are not using these features and you want to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
Enable3dControls();
SetRegistryKey(_T("MFC Screen Savers Inc."));
if (__argc == 1 || MatchOption(__argv[1], _T("c")))
DoConfig();
else if (MatchOption(__argv[1], _T("p")))
{
CWnd* pParent = CWnd::FromHandle((HWND)atol(__argv[2]));
ASSERT(pParent != NULL);
CDrawWnd* pWnd = new CDrawWnd();
CRect rect;
pParent->GetClientRect(&rect);
pWnd->Create(NULL, WS_VISIBLE|WS_CHILD, rect, pParent, NULL);
m_pMainWnd = pWnd;
return TRUE;
}
else if (MatchOption(__argv[1], _T("s")))
{
CSaverWnd* pWnd = new CSaverWnd;
pWnd->Create();
m_pMainWnd = pWnd;
return TRUE;
}
return FALSE;
}
Keywords: kbsamplepro kbscreensaver kbprb KB200440