Не пойму в чем проблема, эта функция см. сабж возвращает указатель на недокументированную структуру EPROCESS через которую я получаю полный путь и имя текущего процесса следующим образом:
.
pProcess=IoGetCurrentProcess();
DbgPrint("Текущий процесс: %S ",pProcess->Peb->ProcessParameters->ApplicationName.Buffer);
.
так вот, иногда падает эта штука, попытка чтения по НУЛЛ :(. Где грабли люди?! И вообще как можно по человечески получить полный путь и имя текущего процесса который обратился к функции драйвера?
[ntddk] iogetcurrentprocess - траблы!08.09.02 13:47 Автор: maa Статус: Незарегистрированный пользователь
Ну как, решил проблему? Я вот тоже над ней бьюсь. Мне нужно знать имя процесса как под Win98, так и под NT. Для 98 нашёл доступ к командной строке процесса, оттуда можно взять имя программы (зачастую, но не всегда, с полным именем). Для NT нашел header nt4.h, в котором описана структура _EPROCESS, но описания ProcessParameters,ApplicationName,Buffer там нет. Поможешь чем знаешь? Будем копать вместе.
[ntddk] iogetcurrentprocess - траблы!08.09.02 14:10 Автор: vim Статус: Незарегистрированный пользователь
> Ну как, решил проблему? Я вот тоже над ней бьюсь. Мне нужно > знать имя процесса как под Win98, так и под NT. Для 98 > нашёл доступ к командной строке процесса, оттуда можно > взять имя программы (зачастую, но не всегда, с полным > именем). Для NT нашел header nt4.h, в котором описана > структура _EPROCESS, но описания > ProcessParameters,ApplicationName,Buffer там нет. Поможешь > чем знаешь? Будем копать вместе.
Киньте мэйл на jamagat@yahoo.com
Вышлю код.
Я эти грабли прошел.