Форум: "WinAPI";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];
ВнизКак насильно завершить другую программу? Найти похожие ветки
← →
Иван Шихалев (2001-11-20 23:23) [7]И еще одна капля дегтя :) Сохранение данных и прочее вполне может оказаться в обработке
WM_CLOSE
илиWM_DESTROY
. Поэтому корректнее всего будет сделатьPostMessage (hWnd, WM_CLOSE, 0, 0)
, затем поставить на какое-то время таймер и по его истечению, если приложение еще не закрылось -TerminateProcess
.
Что касается SendMessage - эта функция синхронная, минует очередь сообщений, следовательноWM_QUIT
вообще скорее всего обработано не будет, поскольку проверка на него зачастую стоит в цикле обработки сообщений (классическая схема:while GetMessage () do
), аDefWindowProc
на него не реагирует. А если таким образом отправитьWM_CLOSE
илиWM_DESTROY
, а та прога на обработке повиснет, что произойдет с отправляющей прогой? Правильно, тоже повиснет - в этом отношенииPostMessage
гораздо надежнее.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.003 c