只是可以通过编译的 不完整的 驱动、、(需要下载Windows DDK、、)
很小以至于不用IDE环境了、、、直接txt咯、、这样就得自己写makefile和Sources文件、、、
1 新建一个文本文档 以c为后缀名来编写、取名xx_hello.c
这说明是以c的方式来书写以c的方式来书写 就是以c语言的方式来编译、、
C语言有一个特点 入口函数自动为stdcall 方式 来编译 而c++则为cdecl调用方式、
2 驱动的main函数、、
NT式驱动的头文件申明为ntddk.h
DriverEntry //入口函数相当于win32编程中的main
DriverEntry 有2个参数 如下:
PDRIVER_OBJECT
//此结构用来传递驱动对象,由系统内核的I/O管理器传递进来的驱动对象
PUNICODE_STRING
//此结构用来指向此驱动负责的注册表,也就是驱动程序在注册表中的路径
好咯 xx_hello.c格式如下、、
#include <ntddk.h>
int DriverEntry(PDRIVER_OBJECT A,PUNICODE_STRING B)
{
return (1);
}
3 makefile文件 一般就一行、、
# 此文件 一般情况下只有一行 并且不需要修改不能有前导空格
#号前都是注释
!INCLUDE $(NTMAKEENV)\makefile.def
4 Sources文件、、
#下边这行指定生成驱动名字xx_hello.sys
TARGETNAME=xx_hello
#下边这行指定生成文件的类型 DRIVER指驱动
TARGETTYPE=DRIVER
#下边这行指定生成驱动所在的路径 \SYS\ xx_hello.sys
TARGETPATH=SYS
#下边这行指定相关头文件所在目录路径 IDE环境的包含已经设置
#斜杠相当于换行注意分号
INCLUDES=$(BASEDIR)\inc;\
$(BASEDIR)\inc\wxp;\
##上边必空一行 C:\WINDDK\3790.1830 等价 $(BASEDIR)(移植性好)
#下边这行指定驱动源代码*.cpp或者*.c 很重要写错了找不到、最后没有分号
SOURCES= xx_hello.c\
三个文件写好后放到一个文件夹下、、
使用ddk编译、、即可、、
这里只能编译一次要想强制性再生成一次驱动 这样既可build –c 即可、、