2012-02-28 3 views
2

Я просто мочу ноги с помощью программирования драйверов, но я не могу убежать. Вэнь я пытаюсь загрузить мой драйвер с помощью инструмента OSRLoader, я получаю сообщение об ошибке: этот драйвер заблокирован от загрузки.WinDDK: Запуск моего первого драйвера

Моя система: Win 7 64 бит, AVG Antivirus бесплатно, последний winDDK. Скомпилированный файл sys драйвера 4kb. Я создаю его с проверенной средой сборки x86.

Код

#include <ntddk.h> 

NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pRegistryPath){ 
    DbgPrint("Hello World!\n"); 
    return STATUS_SUCCESS; 
} 

Makefile:

!INCLUDE $(NTMAKEENV)\makefile.def 

источники

TARGETNAME=helloworld 
TARGETTYPE=DRIVER 
TARGETPATH=MyDriver 

INCLUDES=..\inc 
SOURCES = Main.c 

Как я могу получить это запустить?

+0

Сообщает ли сообщение об ошибке, почему драйвер был заблокирован от загрузки? Не найден в пути? Неверный формат? Отсутствие разрешения? – wallyk

+4

Мои догадки: либо вы пытаетесь загрузить 32-разрядный код в 64-разрядной ОС, либо у вас нет параметра «Запретить принудительное подшивание драйверов», поскольку обычно требуется, чтобы 64-разрядные драйверы подписывались на Vista/7. – ChrisV

+0

Он не дает какой-либо конкретной ошибки a, я довольно уверен, что у меня есть правильная архитектура, скомпилированная, и, конечно, я запускаю как администратор uac, я позаботился о том, чтобы убедиться в соблюдении подписи, плохо попробуйте, спасибо –

ответ

2

необходимо установить драйвер.

это можно сделать с помощью INF-файла и приложения, которые вызывают devcon.exe из WDK. вам необходимо создать INF, который root \ XXX «идентификатор оборудования».

Я бы назвал toaster sample в WDK, это очень хороший образец, чтобы научиться писать драйверы.

0

Он показывает, что «этот драйвер заблокирован от загрузки», потому что вы построили драйвер с помощью x86 build env на машине x64. Построение его с помощью x64 Free/Checked build будет работать!

Смежные вопросы