【驱动学习】1-驱动开发环境准备

文章目录

概述:驱动开发环境准备,以 Visual Studio 2022 为例

该 Wiki 下的所有文章均参考大佬 LyShark® - 信息安全电子刊物出版品牌

学习记录,如有侵权,联系必删

[toc]

步骤一 安装sdk与wdk

安装windows相关的sdk

参考微软文档:下载 Windows 驱动程序工具包 (WDK) - Windows drivers | Microsoft Learn

步骤二 调试与安装工具

步骤三 驱动框架

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <ntddk.h>

// #include <ntifs.h>

NTSTATUS UnloadDriver(PDRIVER_OBJECT pDriver)
{
DbgPrint("Bye, Driver");
}

NTSTATUS DriverEntry(PDRIVER_OBJECT pDriver, PUNICODE_STRING pReg)
{
DbgPrint("Hello World, Driver");
DbgPrint("DRIVER ADDress, [%]");
DbgPrint("Hello World, Driver");

pDriver->DriverUnload = UnloadDriver;

return STATUS_SUCCESS;
}

步骤三 Visual Studio配置

  1. C/C++ -> 常规 -> 将警告视为错误 -> 否
  2. C/C++ -> 常规 -> 警告等级 -> 等级3(也可忽略)
  3. 驱动运行环境
  4. inf2cat -> Run Inf 2 Cat -> 否
  5. 编译运行,会生成sys文件

步骤四 远程部署

相关参考

流程相对比较复杂,还有部分双机调试的设置,详情可以参考官方文档。

配置成功如下图所示:

image-20251207215607089

其他补充

禁用界面输出无用信息

1
2
ed nt!Kd_SXS_Mask
ed nt!Kd_FUSION_Mask