Форум: "WinAPI";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
ВнизПроцесс запуска EXE-файла Найти похожие ветки
← →
fester (2004-11-17 14:42) [0]Есть файл 1.exe. Как отловить его запуск и перед запуском 1.exe выполнить какой-либо код.
← →
TUser © (2004-11-17 14:44) [1]поставить хук на вызов апи функций
подменить сам 1.exe
ps. не пиши вирусов
← →
Игорь Шевченко © (2004-11-17 14:49) [2]Через реестр
← →
fester (2004-11-17 16:21) [3]это не вирус, хук на какое сообщение, я не могу найти wm_...
← →
Digitman © (2004-11-17 17:03) [4]
> fester (17.11.04 16:21) [3]
> это не вирус, хук на какое сообщение, я не могу найти wm_...
какое нафих сообщение, если стартуемый процесс не является GUI-процессом ?
в общем случае решение единственное - kernel-mode driver
примеры - на wasm.ru
← →
fester (2004-11-17 17:26) [5]Digitman. тогда подскажи как делать? я наверно не догоняю.....
← →
Digitman © (2004-11-17 17:37) [6]
> fester (17.11.04 17:26) [5]
упомянутый wasm.ru тебе ни о чем не говорит ?
жми туда и ищи пример !
← →
Anatoly Podgoretsky © (2004-11-17 17:39) [7]Зачем его отлавливать, можно можно обойтись командным файлом?
← →
Digitman © (2004-11-17 17:45) [8]
> Anatoly Podgoretsky © (17.11.04 17:39) [7]
"ловцов"-то тут разных - по пояс и выше) ... проблемы в том, что как правило мало кто из них в состоянии вразумительно пояснить хотя бы что значит "процесс", что значит "отловить"..
← →
fester (2004-11-17 18:13) [9]Такие люди отвечают :)) Ничего плохого замутить не хочу :)) Рихтера читали, и чем отличается процесс от потока знаем :))Вот возможно ли "отловить"запуск процесса мы не знаем :(( Надо не допустить запуск определенной программы.....выполнить действия до запуска
← →
Digitman © (2004-11-17 18:18) [10]
> fester (17.11.04 18:13) [9]
так..
прекращай клоунаду.
истина лежит вблизи ф-ции
PsSetCreateProcessNotifyRoutine()
← →
fester (2004-11-17 18:48) [11]Спасибо....это для друга :)) wasm - любимый ресурс, особннно нравится "дао программизма" :)) Жаль с асмом разбираться лень :))
← →
DelphiN! © (2004-11-19 08:29) [12]HKEY_CLASSES_ROOT\EXEFILE
...
← →
vovchik (2004-11-19 08:48) [13]Digitman
истина лежит вблизи ф-ции
PsSetCreateProcessNotifyRoutine()
Эта функция работает только для запуска драйверов.
----------------------------------------------------
DelphiN!
HKEY_CLASSES_ROOT\EXEFILE
если делать проверку этой ветки, то надо каждую долю времени проверять, а это нагрузка на память. Или может я не то думаю???
← →
Alekc (2004-11-19 17:28) [14]
> HKEY_CLASSES_ROOT\EXEFILE
>
> если делать проверку этой ветки, то надо каждую долю времени
> проверять, а это нагрузка на память. Или может я не то думаю???
Там можно указать обработчик файлов типа "exe", т.е. твоя прога будет вызываться перед перед запуском любого exe-файла... Но если ты потом свой exe нечаянно удалишь, или он будет работать неправильно, то случится *опа...
← →
Ihor Osov'yak © (2004-11-19 18:47) [15]Первый вариант - PsSetCreateProcessNotifyRoutine - уже упоминали - см. [10].
Есть еще один способ, не совсем очевидный - драйвер-фильтр файловой системы и отслеживание IRP_MJ_CREATE с последующим анализом
currentIrpStack->Parameters.Create.SecurityContext->DesiredAccess на предмет наличия флажка FILE_EXECUTE. Преимущество этого способа по сравнению с вариантом из [10] - то, что мы получаем нотификацию "до того" и есть возможность отменить запуск процесса, а также то, что мы получаем нотификацию не только об "откритии" основного файла, а и нотификацию об отображении всех подгружаемых длл для соотв. процесса.
← →
Ihor Osov'yak © (2004-11-19 18:51) [16]ах, да, сори в 15 речь вообще об контроле запуска любого процесса. Если нужно отслеживать запуск конкретного процесса (1.exe)- то есть возможность зарегистрировать свою программу как отладчик этого процесса.. Ньюансов не помню, в документацию лень смотреть - поищите что-то вокруг отладки сервисов - этот прием один из возможных вариантов отладки сервисов - как правило, в faq о написании сервисов конкретно указывается, что нужно прописать в реестри, чтобы стать отладчиком для соотв. исполнительного файла..
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.035 c