Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: CL | DM;

Вниз

Как отловить принудительное завершение своего приложения?   Найти похожие ветки 

 
Petrovich   (2004-02-26 16:38) [0]

Подскажите, что надо обрабатывать (и как :-), чтобы узнать, что кто-то завершает принудительно твое приложение? Не подумайте чего плохого, просто в лог надо записать, что приложение завершается и оповестить народ по сети :-)
Ни в OnClose, ни в OnDestroy главной формы программа не заходит, если кто-то завершит ее по ошибке или злому умыслу через Ctrl-Alt-Del. Ну или еще мало ли как грохнут ее.


 
mip ©   (2004-02-26 16:52) [1]

попробуй OnCloseQuery


 
Petrovich   (2004-02-27 15:01) [2]

Не работает. Вернее, при нормальном завершении программы туда программа приходит, а при ненормальном - нет


 
Игорь Шевченко ©   (2004-02-27 15:04) [3]

При "ненормальном" - никак не отловить. На то оно и ненормальное


 
Тимохов ©   (2004-02-27 15:05) [4]

Что такое "ненормальное"?


 
Petrovich   (2004-02-27 15:10) [5]

1. По Ctrl-Alt-Del грохают программу
2. X:\WINXP\system32\shutdown.exe -s -f - завершает все работающие программы без вопросов и закрывает Windows XP


 
Eagle-XK ©   (2004-02-27 15:16) [6]

По-моему, от этого даже Винда не застрахована (Ресет :-) ), а если серьезно, то тебе нуно либо:
а. Забыть (или забить, что предпочтительнее)
б. Попробуй перехватьти АПИшную функцию Тэрминэйт :-)
х. Извращайся :-)))


 
Petrovich   (2004-02-27 15:42) [7]

Сам я умею послать его кому-либо, а как чужой терминэйт перехватить? :-)

Обработчик, допустим, можно, в OnMessage повесить. А как называется событие? Подскажите. В справке я только wm_dde_Terminate нашел. Я думаю, оно мне не надо.


 
Игорь Шевченко ©   (2004-02-27 15:46) [8]

Petrovich (27.02.04 15:42)

Еще раз - когда программа завершается через TerminateProcess, это нельзя перехватить. Да и ни к чему.


 
Erik ©   (2004-02-27 15:55) [9]

Вобщето предварительно будет послано WM_CLOSE(точно непомню), а если программа сама незавершится то TerminateProcess.


 
Petrovich   (2004-02-27 15:55) [10]

Спасибо! А зря :-(
Ну да ладно!


 
Андрей Сенченко ©   (2004-02-27 16:56) [11]

Почему же зря. Какова должна быть функциональность программы, чтобы она обязана была продолжать работать даже при принудительном обесточивании Вашего района ?

Вы пишите программу управления марсоходами ?


 
Petrovich   (2004-02-27 17:29) [12]

Нет :-)
Про свет, естественно, не было речи.

Просто думал, что если кто-то прибивает мой процесс, то должен вначале об этом хоть какое-то сообщение послать моей программе. Я, естественно, никакого бы сопротивления не оказывал этому.
Просто бы в лог записал: "Аварийная остановка во столько-то". Ну еще бы, может, СМС-ку себе послал, что программа вырубилась



Страницы: 1 вся ветка

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.022 c
6-43723
Bart
2004-01-06 10:37
2004.03.14
IdTCPServer.TimeOut


1-43650
ser_ega
2004-03-01 22:38
2004.03.14
Форма


3-43331
Layner
2004-02-16 11:52
2004.03.14
Преоборазование БД ACCESS *.mdb в файл *.mde, или как зищитить


1-43496
Vlad40
2004-02-26 13:14
2004.03.14
Click в MonthCalendar: как идентифицировать щелчок по дню?


1-43603
mkf
2004-03-02 16:51
2004.03.14
menu as XP