Убийца приложения
-
WakeUp
Убийца приложения
Как сделать,чтобы моё приложение нельзя было убить? Или какие messages
ловить?
(в Ctrl + Alt + Del его не видно, тут проблем нет)
ловить?
(в Ctrl + Alt + Del его не видно, тут проблем нет)
-
WakeUp
Re: Убийца приложения
Можно попробовать перезапускать процесс при попытке закрыть приложение... Но это в зависимости от того, что именно хочеться увидеть в итоге...
-
WakeUp
Re: Убийца приложения
WakeUp
мы тут не вирус случайно пишем объединенными усилиями?
системный процесс? посмотри,
Добавлено:
да, самое главное - склероз
TerminateProcess и вообще посмотри
[s]Исправлено: mar, 1:28 24-01-2003[/s]
мы тут не вирус случайно пишем объединенными усилиями?
системный процесс? посмотри,
как его убивают
+ MSDN на то, что там, может, скомпонуешь, как не убивать. Если придумаешь, напиши, pls. Это может быть полезно и для благих целей 
Добавлено:
да, самое главное - склероз
TerminateProcess и вообще посмотри Рихтера (Windows для профессионалов)
Про процессы. [s]Исправлено: mar, 1:28 24-01-2003[/s]
-
vasketsov
Re: Убийца приложения
WakeUp
Никак.
Если захотят - все равно убьют.
На некоторых NT-системах нельзя прибить CSRSS.EXE, но это так задумано на уровне ядра.
При вызове TerminateProcess ловить сообщения бесполезно, их просто не будет.
Никак.
Если захотят - все равно убьют.
На некоторых NT-системах нельзя прибить CSRSS.EXE, но это так задумано на уровне ядра.
При вызове TerminateProcess ловить сообщения бесполезно, их просто не будет.
-
vasketsov
-
vasketsov
Re: Убийца приложения
vasketsov
конечно, посылаются окну (и вопрос был - какие сообщения ловить)
насчет - необязательно - это то есть как?
именно что обязательно - так окошки устроены - на распределении и обработке сообщений.
Когда мы хотитм закрыть окно - любым способом, то ему посылается сообщение WM_DESTROY Оно попадает в функцию окна и уже она, вызывает функцию PostQuitMessage(), которая помещает в очередь сообщений WM_QUIT
Когда из очереди выбирается WM_QUIT, GetMessage (или ее заменитель
) возвращает FALSE и приложение должно завершить цикл обработки.
т.е., если не хотеть закрываться, то в WndProc, или в том, что ее заменяет, надо обратить внимание на стандартное место
Код:
конечно, посылаются окну (и вопрос был - какие сообщения ловить)
насчет - необязательно - это то есть как?
именно что обязательно - так окошки устроены - на распределении и обработке сообщений.
см. MSDN
Когда мы хотитм закрыть окно - любым способом, то ему посылается сообщение WM_DESTROY Оно попадает в функцию окна и уже она, вызывает функцию PostQuitMessage(), которая помещает в очередь сообщений WM_QUIT
Когда из очереди выбирается WM_QUIT, GetMessage (или ее заменитель
) возвращает FALSE и приложение должно завершить цикл обработки.т.е., если не хотеть закрываться, то в WndProc, или в том, что ее заменяет, надо обратить внимание на стандартное место
Код:
-
WakeUp
Re: Убийца приложения
mar
Это всё при нормальном завершении приложения.
Я пробовал.
P.S. забыл: всё это под Win9X.
Это всё при нормальном завершении приложения.
Я пробовал.
P.S. забыл: всё это под Win9X.
-
WakeUp
Re: Убийца приложения
mar
В начале ссылки на WinCE, там-то как раз это не обязательно и в MSDN это даже написано.
Цитата:
В начале ссылки на WinCE, там-то как раз это не обязательно и в MSDN это даже написано.
Цитата:
-
mar
Re: Убийца приложения
vasketsov так я про wm_close писала, а в код, извини, не воткнула. Это же Microsoft ! у них, как в египетской мифологии: куча богов отвечает за одно и то же, а для жрецов еще и недокументированные возможности
WakeUp
а что ты понимаешь под ненормальным завершением? мы же не будем настаивать на том, чтобы приложение продолжало работать с выключенным питанием
WakeUp
а что ты понимаешь под ненормальным завершением? мы же не будем настаивать на том, чтобы приложение продолжало работать с выключенным питанием
