156879279 发表于 2026-9-20 10:55:54

KMDF 驱动入门,HelloWorld 驱动完整流程

KMDF 驱动入口函数为DriverEntry,相当于驱动的 main 函数,驱动加载时系统调用此函数。DriverEntry主要工作:初始化 WDF 驱动对象,注册设备添加回调EvtDriverDeviceAdd。
EvtDriverDeviceAdd回调负责创建设备对象、创建符号链接,用户态程序可以通过符号链接打开驱动设备。KMDF 框架会自动处理 PnP 和电源事件,不需要开发者手动拦截 PnP 的 IRP。
开发步骤:

[*]环境准备:VS2022 + 对应版本 WDK,安装驱动开发组件;准备一台 Windows 虚拟机作为调试目标机,开启测试签名。
[*]创建 KMDF 空驱动项目,编写DriverEntry与设备创建回调。
[*]编译生成.sys驱动文件与 inf 安装文件。
[*]目标机开启测试签名,部署 sys 文件,加载驱动。
[*]WinDbg 连接虚拟机,查看调试打印信息,验证驱动加载。
简单示例逻辑:驱动加载后在调试控制台输出日志;用户态通过 DeviceIoControl 下发指令,驱动接收数据并回传,完成用户态与内核态通信。

untaxed 发表于 3 天前

看了LZ的帖子,我只想说一句很好很强大!
页: [1]
查看完整版本: KMDF 驱动入门,HelloWorld 驱动完整流程