本人刚学习驱动开发。这篇文章权当总结。不要喷我
一。所用工具
1.WDK 7.1.0
2.KmdManager.exe 驱动加载程序
3.DbgView 查看打印信息
二。生成驱动所需文件
1.FirstDriver.c
2.MAKEFILE
3.SOURCES
三。文件内容
FirstDriver.c
#include "ntddk.h"
void MyUnloadDriver(PDRIVER_OBJECT pDriverObject)
{
}
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject,PUNICODE_STRING pRegistryPath)
{
DbgPrint("hello world");
pDriverObject->DriverUnload=MyUnloadDriver;
return STATUS_SUCCESS;
}
MAKEFILE
INCLUDE $(NTMAKEENV)\makefile.def
SOURCES
TARGETNAME = FirstDriver
TARGETTYPE = DRIVER
TARGETPATH = OBJ
SOURCES = FirstDriver.c
四。编译方法
安装完后打开指定工具在cmd环境下调到文件目录使用build命令即可
五。调试方法
1.建议以下操作统统在虚拟机下完成,调试时可能蓝屏
2.打开DbgView监视内核状况
3.打开KmdManager加载生成的sys文件并运行
六。成功的标志
DbgView中显示了hello world
特别注意
源文件所在目录不能带空格,否则编译失败,当时纠结了很久