|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
|
Solomon |
|
|||
Опытный Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
Всем, привет
Передо мной стала задача. При закрытии окна открывать ссылку в браузере. Так вот среди прочих закрытий необходимо так же учесть возможность закрытия преложения через Task Manager. Может кто то сталкивался с данной проблемой. Возможно ли вообще перехватить данное событие? Как то никогда данным вопросом не интересовался. В гугле тоже ничего толкового не нашел. Платформа WindowsOS. -------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
GoldFinch |
|
|||
Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 2 Всего: 26 |
создай еще 1 процесс, и следи из него за первым
|
|||
|
||||
borisbn |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
или сделай так, чтобы твоего процесса не было видно в Task Manager'е
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
Solomon |
|
|||
Опытный Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
borisbn, не вариант... игроки будут недовольны)
GoldFinch, тоже неочень хороший вариант плодить кучу процессов -------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
jonie |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 7 Всего: 118 |
вообще перед убийством система пытается завершить приложение законным методом, если я не ошибаюсь... посмотрите на оконные сообщения в момент убийства
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
borisbn |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
это я первое, что попробывал Spy++ - нету :( -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
qwert8734 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 26.3.2010 Репутация: нет Всего: нет |
на сколько я помню, через ключ в реестре можно к каждому запускаемому приложению подцепить dll. не уверен, но можно попробовать вызвать ShellExecute при отгрузке dll
кстати, приложение свое и его можно править или надо цепляться к чужому процессу? Это сообщение отредактировал(а) qwert8734 - 31.3.2010, 15:41 |
|||
|
||||
jonie |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 7 Всего: 118 |
ну проще всего получается запустить еще одну копию себя, сделав предварительно мьютекс какой, его и использовать как "точку ожидания"...
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
qwert8734 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 26.3.2010 Репутация: нет Всего: нет |
может и проще, если исходник есть. тут уж слово за вопрошающим, он такую информацию не дал
PS с таск-манагером точно пройдет, так как сам видел вирусы, которые не убивались через него, явно запускали копию себя и появлялись заново, а вот FAR убивал насмерть. если есть подозрение, что процесс могут убить фаром, то решение будет сложнее Это сообщение отредактировал(а) qwert8734 - 31.3.2010, 18:15 |
|||
|
||||
borisbn |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
"отгрузка" dll при снятии через диспетчер не производится. проверил:
файл DLL_PROCESS_DETACH.txt не создаётся при снятии из диспетчера. к другому - это совсем просто: каждую секунду проверяешь CreateToolhelp32Snapshot jonie, вариант - супер !!! -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
bra1ny |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 196 Регистрация: 26.12.2008 Репутация: 2 Всего: 3 |
NtTerminateProcess перехватить.
--------------------
Что вас манит сюдаИз заморзких широт?Там гораздо сытней и красивей.Или воля не та, или воздух не тот -Знать и вам не прожить без России. |
|||
|
||||
jonie |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 7 Всего: 118 |
bra1ny, за это вас могут покарать как правами так и антивирусами.
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |