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