| Цитата | вообще чтобы из программы нельзя было выйти даже при нажатии лавиш Ctrl+Alt+Del
|
Это можно сделать следующим образом: перед тем как завершить процесс винда посылает программе сообщение WM_DESTROY, если эта комманда не выполняется то вында убивает процесс. т.е. можно надо тловить сообщение WM_DESTROY и создать новый процесс.
| Код | LRESULT WINAPI WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { HANDLE_MSG(hWnd, WM_DESTROY, WndProc_OnDestroy); default: return DefWindowProc(hWnd, msg, wParam, lParam); } }
void WndProc_OnDestroy(HWND hWnd) { STARTUPINFO si; PROCESS_INFORMATION pi;
// Создадим другой процесс, а этот благополучно завершим. memset(&si, 0, sizeof(STARTUPINFO)); si.cb = sizeof(STARTUPINFO); CreateProcess(NULL, "MyProg.exe", NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi); CloseHandle(pi.hThread); CloseHandle(pi.hProcess); PostQuitMessage(0); }
|
По моему это работает только под Win9x |