1->驱动开发 helloWorld程序

一 安装vmvare  并且安装上xp系统

          假设已经安装了虚拟机 并且已经安装了xp x86版 

二 下载wdk 并且安装

        在微软官网下载 wdk7600.16385.1安装 安装时 将例子也勾上

假设安装在c:/winddk目录下

目录下的/7600.16385.1/src中有许多源代码 可供参考

三 编写源代码 

      如下helloworld步骤:

     在c盘添加一个目录  driverTest   在该目录下

                  1 添加源代码: 添加一个 test.c   [注意这里是c后缀 表示使用c语言开发]

内容:(以下相当于c语言的main函数)

#include <ntddk.h>
int DriverEntry(PDEVICE_OBJECT dev,PUNICODE_STRING regPath ){
return 0;
}

                  2 添加MAKEFILE文件  文件内容只有一行  !INCLUDE $(NTMAKEENV)\makefile.def

                  3 添加source文件   文件内容如下

                        #表示被生成的驱动文件的名称为 那么最终会生成 test.sys

                        TARGETNAME=test

#表示生成的是一个驱动
TARGETTYPE=DRIVER

#表示驱动被生成的目录  
TARGETPATH=sys

#表示 驱动编译的源文件有哪些  使用 \表示换行
SOURCES=\
    test.c             \
    如果这些文件不记得这些单词 可以到 7600.16385.1/src下搜索一下 makefile或者source 基本每一个驱动都有这两个文件  稍微改动一下就可以使用 

四 编译生成sys文件 

     开始-程序-Windows Driver Kits-WDK 7600.16385.1-Build Environments-Windows XP-x86 Checked Build Environment

     运行Windows XP-x86 Checked Build Environment  进入 刚刚创建的driverTest目录

    使用dos命令    cd c:/driverTest目录

    执行命令  build 或者build -c 【-c表示如果已经编译过 还是重新在编译一次 】
C:\drivertest>build -c
BUILD: Compile and Link for x86
BUILD: Loading c:\winddk\7600.16385.1\build.dat...
BUILD: Computing Include file dependencies:
BUILD: Start time: Sun Apr 17 12:45:50 2016
BUILD: Examining c:\drivertest directory for files to compile.
    c:\drivertest Auto-cleaning queue for 'root:x86chk' (1 of 1 file(s) removed)


Invalidating OACR warning log for 'root:x86chk'
BUILD: Saving c:\winddk\7600.16385.1\build.dat...
BUILD: Compiling and Linking c:\drivertest directory
Configuring OACR for 'root:x86chk' - <OACR on>
_NT_TARGET_VERSION SET TO WINXP
Compiling - test.c
Linking Executable - sys\i386\wpdhelloworlddriver.sys
BUILD: Finish time: Sun Apr 17 12:45:51 2016
BUILD: Done


    3 files compiled
    1 executable built

编译后 查看目录 下 存在一个  /sys/i386/test.sys




posted @ 2016-04-17 12:55  饺子吃遍天  阅读(389)  评论(0编辑  收藏  举报