Здравствуйте, уважаемый Артем.
Меня заинтересовал "Шаг 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; }
Этот метод по-моему больше подходит для данной программы.
С уважением Г.Борисов.