Комментарии к шагу 184

Здравствуйте, уважаемый Артем.

Меня заинтересовал "Шаг 184 - Создаем хранитель экрана". Единственное, что мне не очень понравилось, хотя, возможно, я не до конца понял Вашу идею, так это метод определения запущено ли приложение или нет. По моему TitleBar будет не уместен в примере screen save. Хочу предложить другой способ определения: Описать глобальную переменную в CScreenSaveApp: HANDLE hQuit; - дескриптор события "не следует запускать" Тогда в InitInstance:

BOOL COffApp::InitInstance()
{
if(!strcmpi(m_lpCmdLine, "/s") ||
	!strcmpi(m_lpCmdLine, "-s") ||
	!strcmpi(m_lpCmdLine, "s")){
hQuit = CreateEvent(NULL, TRUE, FALSE, "WasStarted");
if(GetLastError() == ERROR_ALREADY_EXISTS)
{
	return FALSE;
}
else
{
	SetDialogBkColor(RGB(0,0,0));
	COffDlg dlg;
	m_pMainWnd = &dlg;
	dlg.DoModal();
}
}
return FALSE;
}

Этот метод по-моему больше подходит для данной программы.

С уважением Г.Борисов.


Автор : Г.Борисов.