Страницы 1
Товарищи, ситуация следующая:
Есть процесс notepad.exe, с помощью перехвата NtOpenProcess в драйвере возвращаю STATUS_ACCESS_DENIED. Все работает, но только в случае завершения процесса. При завершении же задачи никакого эффекта. Вопрос:почему?
Добавлено спустя 16 мин 22 с:
Или ещё нужно хватать NtTerminateProcess?
Неактивен
Майор Очевидность, так оттуда и гляжу Но там только перехват ОпенПроцесс, а вот терминейт-нету.
Неактивен
Майор Очевидность, cудя по всему, при завершении процесса вызывается NtOpenProcess, а при завершении приложения-NtTerminateProcess. Хотя, может и не так..
Добавлено спустя 05 мин 19 с:
Майор Очевидность, я имею ввиду кнопки в Диспетчере задач. "Завершить процесс" и "Завершить задачу".
Неактивен
я имею ввиду кнопки в Диспетчере задач. "Завершить процесс" и "Завершить задачу".
Судя по поведению Диспетчера кнопка "Завершить задачу" даёт приложению команду на завершение, ждёт отклика приложения и в случае его неполучения завершает процесс, а кнопка "Завершить процесс" собственно завершает процесс силовым методом без отсылки команд приложению.
Неактивен
Maddoc, но какая разница? Ведь для завершения программы (и процесса как следствие) все равно нужно вызывать либо NtOpenProcess или NtTerminateProcess.
Неактивен
Судя по тому, что в "задачах" отражались только те процессы, которые имели окна(да и именовались они именно по окнам), мне всегда казалось, что диспетчер просто посылает окнам сообщения о закрытии(и если не сработало, то убивает сам процесс).
За каждым подвигом стоит чье-то разгильдяйство.
Кому я нужен, могут найти меня вконтакте, ник тот же.
Неактивен
Так, нашел интересную особенность... Если перехватить NtOpenProcess, поменять там PID своего процесса на "", то обламывается даже AVZ Хотя и говорит, что функция NtOpenProcess перехвачена...
Неактивен
Страницы 1