本機環境:winXP SP3 + DDk3790.1830node
下載:測試
DDK3790.1830ui
http://pan.baidu.com/s/1jG9f9Oispa
http://download.microsoft.com/download/9/0/f/90f019ac-8243-48d3-91cf-81fc4093ecfd/1830_usa_ddk.iso .net
1、新建一個名爲(enent)的空項目debug
Project name:eventcode
Location:E:\DRIVERTEST\eventrem
2、選中Build-Configurations 配置版本checkit
添加一個名爲check的配置io
刪除原來的release和debug配置
3、Tools -----Options------Directories
在Include目錄中添加:
D:\WINDDK\3790.1830\inc\wxp
D:\WINDDK\3790.1830\inc\crt
D:\WINDDK\3790.1830\inc\ddk\wxp
D:\WINDDK\3790.1830\inc\ddk\wdm\wxp
在Executable files目錄中添加:
D:\WINDDK\3790.1830\BIN\X86
在Library files目錄中添加
D:\WINDDK\3790.1830\LIB\WXP\I386
4、Project Settings
General 選項卡
Debug 選項卡
C/C++ 選項卡
1.Preprocessor definitions:WIN32=100,_X86_=1,WINVER=0x501,DBG=1
2.Project Options:/nologo /Gz /MLd /W2 /WX /Z7 /Od /D WIN32=100 /D _X86_=1 /D WINVER=0x501 /D DBG=1 /Fo"ddk_check/" /Fd"ddk_check/" /FD /c
Link 選項卡
1. Project Options:Wdm.lib ntoskrnl.lib /nologo /base:"0x10000" /stack:0x400000,0x1000 /entry:"DriverEntry" /subsystem:console /incremental:no /pdb:"ddk_check/event.pdb" /debug /machine:I386 /nodefaultlib /out:"ddk_check/event.sys" /subsystem:native /driver /SECTION:INIT,D /RELEASE /IGNORE:4078
Resources 選項卡
1. Project Options:/l 0x804 /fo"ddk_check\event.res" /d "_DEBUG"
驅動測試:
測試方法->把event.c文件附加至工程->編譯
//event.c #include <ntddk.h> VOID DriverUnload(PDRIVER_OBJECT pdrvier) { DbgPrint("驅動被卸載了!"); } NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING path_reg) { DbgPrint("驅動被加載了!"); pDriverObject->DriverUnload=DriverUnload; return 1; }
(完)
編者:richardx(http://my.oschina.net/richardx)