Re: PsSetLoadImageNotifyRoutine:Create всегда 15
От: -prus-  
Дата: 24.03.17 20:50
Оценка: +1
Здравствуйте, pva, Вы писали:

pva>Привет,


pva>регистрирую колбек
pva>    PsSetLoadImageNotifyRoutine(ModuleImageLoadedNotify);
pva>
pva>void ModuleImageLoadedNotify(PUNICODE_STRING FullImageName, HANDLE ProcessId, PIMAGE_INFO ImageInfo, BOOLEAN Create) {
pva>    moduleDebugPrint((__FUNCTION__"(name: %wZ, base: 0x%p, size: 0x%08x, create: %d)\n",
pva>        FullImageName, ImageInfo->ImageBase, ImageInfo->ImageSize, Create));
pva>}

pva>Win7 x64 (UPD). Create всегда прилетает 15 что на загрузке что на выгрузке. ЧЯДТ?

Регистрируя этот колбек вы сможете только мониторить загрузку (мапинг) пользовательского модуля или драйвера. Выгрузку вы не увидите.

Called by the operating system to notify the driver when a driver image or a user image (for example, a DLL or EXE) is mapped into virtual memory


И там в документации у MS походе опечатка как раз в описании последнего параметра для SetLoadImageNotifyRoutine. Там для параметра Create написано:

Create [in]
Indicates whether the process was created (TRUE) or deleted (FALSE).


Походу там копипаст из SetCreateProcessNotifyRoutine.

Ну а по поводу 15 — BOOLEAN в wdk объявляна так:
typedef UCHAR BOOLEAN;


Нужно дизасмить ядро и там смотреть, почему именно 15.
С уважением,
Евгений
Отредактировано 24.03.2017 21:18 -prus- . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.