xx_学驱动 -- 最小的驱动程序、

只是能够经过编译的 不完整的 驱动、、(须要下载Windows  DDK、、)c++

很小以致于不用IDE环境了、、、直接txt咯、、这样就得本身写makefile和Sources文件、、、编程

1   新建一个文本文档 以c为后缀名来编写、取名xx_hello.cide

  这说明是以c的方式来书写以c的方式来书写 就是以c语言的方式来编译、、函数

  C语言有一个特色 入口函数自动为stdcall 方式 来编译 而c++则为cdecl调用方式、ui

2   驱动的main函数、、对象

  NT式驱动的头文件申明为ntddk.h文档

  DriverEntry //入口函数至关于win32编程中的main it

  DriverEntry 有2个参数 以下:编译

  PDRIVER_OBJECT  class

//此结构用来传递驱动对象,由系统内核的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 便可、、

相关文章
相关标签/搜索