一、环境安装
0、VS2022安装,就不细说了
1、从下面地址下载两个软件WDK和SDK,并安装
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/download-the-wdk
![](https://img-blog.csdnimg.cn/img_convert/73476173c7fb714938ebe521e916c266.jpeg)
2、两个软件一路下一步即可
![](https://img-blog.csdnimg.cn/img_convert/d1f51e3ca1bd737bd34da379af39d5cd.png)
二、新建一个驱动程序,建一个空程序
![](https://img-blog.csdnimg.cn/img_convert/99b96749b66b0400815e3f504233f8d4.png)
三、代码编写
1、在源文件夹里面添加一个C++文件编写驱动
![](https://img-blog.csdnimg.cn/img_convert/9e307ed9c4a7df63e30726f81802e26d.png)
2、添加入口点
#include <ntifs.h>
extern "C" NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT Dot, _In_ PUNICODE_STRING psg)
{
KdPrint(("hello world!!!"));
return 0;
}
![](https://img-blog.csdnimg.cn/img_convert/5525ed7f59b35b3f500d11c6d96e5e28.png)
3、设置生成驱动的属性
![](https://img-blog.csdnimg.cn/img_convert/78f6fad01e57a95927bcc3ebfd409b9c.png)
4、生成项目,将驱动文件*.sys拷贝出来
5、打开Debug View和驱动管理
![](https://img-blog.csdnimg.cn/img_convert/f1babefaa999d209731b561922ee2154.jpeg)
![](https://img-blog.csdnimg.cn/img_convert/cde4c990f2250cb5a7a24b86f87d25d8.jpeg)
6、在Monitor中点击文件夹,加载我们新建的驱动
![](https://img-blog.csdnimg.cn/img_convert/16f0cb479e01acfc1b652e4e85dc7870.jpeg)
7、设置DebugView
![](https://img-blog.csdnimg.cn/img_convert/069694fe8a10ef8cbe596f05c89ce131.jpeg)
![](https://img-blog.csdnimg.cn/img_convert/69238142bf8e95f1d0a81021e318ce26.jpeg)
8、点击驱动管理go标识,提示加载成功
![](https://img-blog.csdnimg.cn/img_convert/3192a33d9ae593a4050686ac8200247e.jpeg)
9、DebugView会显示kdprint里面的内容,说明驱动生成没问题。
![](https://img-blog.csdnimg.cn/img_convert/9589ed0a2a5ee631e3c88d4bf7eee4fa.jpeg)
四、踩过的坑
1、驱动由于没有相关认证,所以调试的时候要,禁用签名验证,禁用后桌面右下角会有如下标致
bcdedit /set testsigning on 禁用验证
bcdedit /set testsigning off 启动验证
![](https://img-blog.csdnimg.cn/img_convert/b16a0a3315dc2687e8cd7408da0e271c.jpeg)
2、DebugView没有调试信息,在注册表中添加一个这样的子项
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter
![](https://img-blog.csdnimg.cn/img_convert/670e82cdc15a39825f5d94dcaa52d99e.jpeg)