说白了,没什么技术含量全是抄得书上的代码,而写下来不过是为了加深对这个东西的印象。
1.开发环境下载搭建
微软官方的下载地址,需要登陆,可以用windows live id或者msn帐号登陆。 中间有一步需要注册,注册后登录会跳转的控制中心,点首页。从左侧类别选择开发人员工具,知道到Windows Driver kit下载安装就可以了。
2.开发驱动的过程中vs或者任何的c语言编译器都不是必须的。
直接建立下面的测试文件Test.c
可以用任何的文本编辑器编辑,键入如下的代码:
#include <ntddk.h> //提供一个Unload函数为了让程序能够动态卸载,方便调试 VOID DriverUnload(PDRIVER_OBJECT driver) { DbgPrint("First:our driver is unloading......\r\n"); //打印调试信息 } //Driver entry ,入口函数相当于main NTSTATUS DriverEntry(PDRIVER_OBJECT driver,PUNICODE_STRING reg_path) { //内核模块入口,可以写入自己想写的代码 #if DBG _asm int 3 #endif DbgPrint("First :hello,my baby!"); //设置一个卸载函数,便于函数退出 driver->DriverUnload =DriverUnload; return STATUS_SUCCESS; } |
现在建立目录Test,把上面的文件放入后新建两个文件:makefile和SOURCES.
makefile文件内容
# # DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source # file to this component. This file merely indirects to the real make file # that is shared by all the driver components of the Windows NT DDK # !INCLUDE $(NTMAKEENV)\makefile.def |
SOURCES文件内容:
TARGETNAME=Test //编译出来的文件名称 TARGETTYPE=DRIVER SOURCES=Test.c //资源名称 |
下面就可以用编译器直接编译了。(代码参考自《寒江独钓》)
运行x86 Checked Build Environment切换到程序目录。build就可以了。变异后生成的文件内容:
原创文章,转载请注明: 转载自 obaby@mars