软件教程 2018年04月20日 深蓝 27221 阅读 Tag:
直接上图
删除.inf
添加代码文件
配置项目属性
关闭签名
虚拟机禁用驱动签名
bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
重启虚拟机
在调试驱动时,我们需要用到几个小工具
1.驱动加载工具InstDrv,我用的是1.3,
2.驱动模块查看工具 PCHunter64
3.Dbgview
Dbgview不显示调试信息,请将下面注册表导入,导入后重启虚拟机
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter]
"DEFAULT"=dword:0000000f
至此,设置完成,开始编写我们的驱动代码
#include<ntddk.h>
#define INITCODE code_reg("INIT")
#pragma INITCODE
VOID DDK_Unload(IN PDRIVER_OBJECT pDriverObject); // 前置说明卸载例程
//TYPEDEF LONG NTSTATUS
// 驱动入口
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject,PUNICODE_STRING B) {
KdPrint(("驱动加载成功...Success!"));
pDriverObject->DriverUnload = DDK_Unload;
return(1);
}
// 驱动卸载
VOID DDK_Unload(IN PDRIVER_OBJECT pDriverObject) {
KdPrint(("驱动成功卸载...OK!"));
DbgPrint("卸载成功!");
}
将上述代码copy到HelloWord.c
“生成解决方案”,或者是“重新生成解决方案”
驱动编译成功
启动虚拟机
打开主机WinDbg x64
虚拟机断下时,输入命令"g" 让虚拟机继续跑起来
接下来我们看一下调试信息
将生成的驱动拷贝到虚拟机
打开PCHunterX64
打开Dbgview
接下来打开InstDrv安装我们的驱动
启动
刷新驱动模块
OK..就可以看到我们的驱动加载成功了~~
我的工单留言列表与站长回复 . 共有留言: 21 条