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

Вниз

принудительное закрытие приложения   Найти похожие ветки 

 
sia ©   (2007-01-09 18:02) [0]

привет.
как мне в моем приложении отследить его принудительное закрытие (три клавиши или завершение процесса в диспетчере задач)? OnClose и OnCloseQuery в этом случае не реагируют.


 
Dmitrij_K   (2007-01-09 18:48) [1]

Сразу вопрос - зачем?
У пользователя должен быть способ аварийного завершения твоей программы


 
sia ©   (2007-01-09 19:13) [2]

есть некоторые отчеты, которые создают впечатление зависшего приложения. причину такой работы этих отчетов обьяснять не хочу. нетерпеливый пользователь срубает приложение и все. организационные способы борьбы с такими пользователями бесполезны. хочу, хоть как-то, с этим бороться.

как же мне, всетаки, отследить это событие?


 
kaZaNoVa ©   (2007-01-09 19:17) [3]

sia ©   (09.01.07 19:13) [2]
как же мне, всетаки, отследить это событие?

где-то был код ... но в общем случае никак ... TerminateProcess не спрашивает у приложения, можно ли его закрыть .. а просто убивает ..

просто надо при начале вычислений инфу сбрасывать в файл чтобы потом продолжить например или ввести еще прогу чтобы запускала повторно, если выключат ...


 
kaZaNoVa ©   (2007-01-09 19:20) [4]

попробуй:  (что будет-честно, не знаю))))))


Procedure SetProcessSelfSecurity;
Var
SecDescriptor : PSecurityDescriptor;
SecACL : ACL;
begin
GetMem(SecDescriptor, SizeOf(TSecurityDescriptor));
InitializeSecurityDescriptor(SecDescriptor, SECURITY_DESCRIPTOR_REVISION);
InitializeACL(SecACL, SizeOf(SecACL), 2);
SetSecurityDescriptorDACL(SecDescriptor, True, @SecACL, False);
SetKernelObjectSecurity(GetCurrentProcess, DACL_SECURITY_INFORMATION, SecDescriptor);
end;


 
kaZaNoVa ©   (2007-01-09 19:21) [5]

GetMem(SecDescriptor, SECURITY_DESCRIPTOR_MIN_LENGTH);


 
kaZaNoVa ©   (2007-01-09 19:25) [6]

еще мона перехватить TerminateProcess и при попытке убить твою программу вежливо сообщать юзеру о нечистоплотности его намерения :)


 
Anatoly Podgoretsky ©   (2007-01-09 19:37) [7]

> kaZaNoVa  (09.01.2007 19:25:06)  [6]

О его моральном облике, о его маме и о его сексуальных пристрастиях


 
sia ©   (2007-01-09 19:44) [8]

:)
а как его перехватить?

идея с файлом с инфой тоже классная...


 
kaZaNoVa ©   (2007-01-09 19:49) [9]

sia ©   (09.01.07 19:44) [8]
перехват апи тут недавно были сообщения ....

но лично я бы делал все чтобы не зависало .. ну и сохранял в файл промежуточные резульаты работы в критических ситуациях))

Anatoly Podgoretsky ©   (09.01.07 19:37) [7]
:)


 
sia ©   (2007-01-09 19:51) [10]

спасибо :)


 
evvcom ©   (2007-01-10 11:08) [11]

> [7] Anatoly Podgoretsky ©   (09.01.07 19:37)
> и о его сексуальных пристрастиях

и наличии горба на спине :)



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

Форум: "Основная";
Текущий архив: 2007.03.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.038 c
2-1171182583
Novichok_new
2007-02-11 11:29
2007.03.04
запретить завершение работы компьютера


2-1171393328
VLS1
2007-02-13 22:02
2007.03.04
OR, AND, вычисление флагов


15-1170859121
Desdechado
2007-02-07 17:38
2007.03.04
Updates на Delphi 7


15-1170780817
syte_ser78
2007-02-06 19:53
2007.03.04
помогите с настройкой ADSL модема


15-1168802470
Moholith
2007-01-14 22:21
2007.03.04
Клиент - Сервер; Запрос - Ответ;





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский