Кажется, что система не может найти файл вашего драйвера. Вероятно, вы указали неверный полный путь при установке службы. Посмотрите в реестр услуг ключа
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\<your_service_name>
для значения ImagePath
. Это значение должно содержать полный путь к вашему файлу драйвера, либо относительно корня системы (обычно C:\Windows
), либо «полностью» абсолютный - начиная с префикса \??\X:
(X
- это буква диска, \??\
делает путь абсолютным из точки диспетчера объектов).
Я предполагаю, что вы взяли код из Rootkits: Подчинение книги Windows Kernel. Это большая книга, Howerver, имейте в виду следующее:
1) это своего рода старый, и многие из его кодов не работают на многопроцессорных машинах,
2) это хакер книга, которая означает, что он делает не рассказывайте, как делать что-то красиво, это просто говорит вам, как сделать код несколько работающим. Код, основанный на нем, может работать, но может быть полон ошибок, если вам не хватает знаний о разработке драйверов Windows.
Это не значит, что это плохая книга. Это просто не руководство, как следует писать драйверы Windows.
Собственно, когда в файле SSDT_Hook.h Я отмечаю строки 141, 142, 148, 150 в качестве комментариев, драйвер загружается отлично .. –
Какие строки вы точно отметили как комментарии? Возможно, драйвер использует подпрограмму, которая не экспортируется ядром в Windows 7. –
141. m_UserTime.QuadPart + = curr-> UserTime.QuadPart; 142. m_KernelTime.QuadPart + = curr-> KernelTime.QuadPart; 148. prev-> NextEntryDelta + = curr-> NextEntryDelta; 151.prev-> NextEntryDelta = 0; –