| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > ZwTerminateProcess |
| Автор: bartram 18.3.2006, 23:06 | ||||
| Делаю хук на системную функцию ZwTerminateProcess Есть длл:
Почему то функция
Не возвращает Хендл процесса, и поэтому условие не выполняется |
| Автор: bartram 20.3.2006, 15:25 |
| Что разве ни кто не знает? |
| Автор: Romikgy 20.3.2006, 15:28 |
| Мож привелегий мало? |
| Автор: bems 20.3.2006, 18:32 |
| Разные вызовы OpenProcess возвращают разные хэндлы. Добавлено @ 18:37 Можно получить путь к проге из которой вызвана процедура хука (ParamStr(0)), примести к какой-нить нормальной форнме (регистр нижний сделать например) и сравнивать с например 'c:\windows\explorer.exe' |
| Автор: bems 20.3.2006, 20:59 |
| А вот так. ИД у процесса один, а Хэндлов может быть дохрена. И каждый из них годен только внутри того процесса который вызвал OpenProcess Добавлено @ 21:01 Всегда пожалуйста! Добавлено @ 21:06 И правильно! это я стормозил. Ща что-нить придумаю... |
| Автор: bartram 20.3.2006, 21:07 | ||
Так а как же всё таки получить "нужный" мне? |
| Автор: bems 20.3.2006, 21:30 |
| Никак. Хэндл это твой личный ключик к объекту. У кого-то другого свой ключик к тому же объекту (в твоем случае процессу). Ключики не одинаковые. |
| Автор: bems 20.3.2006, 22:29 | ||
Добавлено @ 22:31 Єта функция по хєндлу процесса находит его ИД. ИД уникален, его можно сравнивать. |
| Автор: bems 20.3.2006, 22:47 |
| bartram, а у меня AdvApiHook че-то не компилится. Ругается на че-то в асме. Ты как это сделал? |
| Автор: bartram 21.3.2006, 10:13 |
| bems, в каком месте ругается? Кинь код |
| Автор: bems 21.3.2006, 14:50 | ||
делфа пятая |
| Автор: bartram 21.3.2006, 18:09 | ||
| Странно! вот моя процедура, вроде такая же, но у меня всё работает, Делфи 7
Добавлено @ 18:15 А ты что на 5-ой сидишь? Переходить пора на более новые |
| Автор: bartram 21.3.2006, 18:34 |
| Я так думаю проблема в Версии Делфи, потому что Асм есть Асм |
| Автор: bartram 21.3.2006, 20:42 | ||||
Функция не пашет
В этом случае возвращается в качестве paramstr(0) путь к той проги КОТОРАЯ завершает, а не КОТОРУЮ завершают. В моём случае нужен 2 вариант, так что этот метод подходит |
| Автор: bems 22.3.2006, 15:43 | ||||
а вот это странно. у меня работала. Какая винда? Что возвращает функция? |
| Автор: bartram 22.3.2006, 20:47 | ||
bems, я вот тут набросал функцию на основк того кода что ты мне дал
Она почему то не пашет, хотя должна Винда XP sp1 |
| Автор: bems 22.3.2006, 20:57 | ||||
не понял я этих усложнений сделай так
|
| Автор: Cashey 17.11.2006, 16:06 |
А где взять эти модули? |
| Автор: BUGOR 17.11.2006, 19:20 |
| http://www.wasm.ru/pub/21/files/advapihook.rar |