Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.013 c
1-43649
d_oleg
2004-03-01 13:24
2004.03.14
узнать размеры амксимизированного окна


3-43268
Andrew2004
2004-02-12 07:33
2004.03.14
Каскадное удаление в Delphi, Interbase


3-43312
KrasavAl
2004-02-12 12:24
2004.03.14
Как в удобном виде для клиента связать с сетевым MS SQL Server ом


3-43300
Марат
2004-02-12 07:16
2004.03.14
Ttuncate


1-43576
Fishka
2004-02-27 10:29
2004.03.14
Запуск внешней программы и ожидание ее результатов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский