包含driver和exe两个项目
VS2015编译结果:
driver - echo.dll echoum.inf wudf.cat (dll及cat需要数字签名)
exe - echoapp.exe
pnputil - windows vista及以上系统内置
devcon - windows kits 或 winddk
> pnputil /add-driver echoum.inf /install
Microsoft PnP 工具
正在添加驱动程序包: echoum.inf
已成功添加驱动程序程序包。
发布名称: oem9.inf
驱动程序包已安装在设备上: ROOT\GENERIC\0000
驱动程序包总数: 1
已添加驱动程序包数: 1
> pnputil /delete-driver oem9.inf /uninstall
Microsoft PnP 工具
已卸载驱动程序包。
已成功删除驱动程序程序包。
替换设备控制台 (DevCon.exe) - Windows drivers | Microsoft Learnhttps://learn.microsoft.com/zh-cn/windows-hardware/drivers/devtest/devcon-migration
> devcon install echoum.inf root\ECHO
Device node created. Install is complete when drivers are installed...
Updating drivers for root\ECHO from C:\test\umdf\echoum.inf.
Drivers installed successfully.
> devcon remove root\ECHO
ROOT\GENERIC\0000 : Removed
ROOT\GENERIC\0001 : Removed
2 device(s) were removed.
新增目录及文件(不同环境,名称可能不同)
C:\Windows\System32\DriverStore\FileRepository\echoum.inf_amd64_74d0ee4682912356\
ECHO.dll echoum.inf wudf.cat
C:\Windows\INF\oem9.inf
设备管理器新增一个设备类型Generic,该类型下新增一个设备 Sample UMDF v2 ECHO Driver;
services.exe 进程启动一个子进程 WUDFHost.exe,WUDFHost.exe 加载 echo.dll 驱动模块;
>devcon install echoum.inf root\ECHO
Device node created. Install is complete when drivers are installed...
Updating drivers for root\ECHO from D:\test\umdf\echoum.inf.
devcon failed.
>pnputil /add-driver echoum.inf /install
Microsoft PnP 工具
正在添加驱动程序包: echoum.inf
无法添加驱动程序包: 试图将驱动程序添加到存储区时遇到问题。
驱动程序包总数: 1
已添加驱动程序包数: 0
查看日志 C:\Windows\INF\setupapi.dev.log
当前例子,echoum.inf 文件说明部分要求操作系统版本>=Windows 10 1809
命令行执行 winver,查看当前操作系统版本
设备管理器删除了新增的设备;
WUDFHost.exe 结束;
INF文件UmdfLibraryVersion字段,表示当前驱动模块使用的UMDF版本:
[Echo_Install]
UmdfLibraryVersion=2.15.0
ServiceBinary=%13%\echo.dll
可通过VS项目属性/Driver Settings/Driver Model配置。
UMDF 版本历史记录 - Windows drivers | Microsoft Learnhttps://learn.microsoft.com/zh-cn/windows-hardware/drivers/wdf/umdf-version-history
UMDF 版本 | 初始版本 | 包含于 | 使用此 UMDF 版本的驱动程序运行 |
---|---|---|---|
2.33 | Windows 11 版本 21H2 WDK;适用于 Windows Server 2022 的 WDK | Windows 11 版本 24H2;Windows 11 版本 23H2;Windows 11 版本 22H2;Windows 11 版本 21H2;Windows Server 2022 | Windows 11 版本 21H2 及更高版本;Windows Server 2022 及更高版本 |
2.31 | Windows 10,版本 2004 WDK | Windows 10 版本 2004(2020 年 5 月更新,Vibranium) | Windows 10 2004 版及更高版本 |
2.29 | 未在 WDK 中发布 | Windows 10 版本 1903(2019 年 3 月更新,19H1) | Windows 10 版本 1903 和更高版本 |
2.27 | Windows 10,版本 1809 WDK | Windows 10 版本 1809(2018 年 10 月更新,Redstone 5) | Windows 10 版本 1809 及更高版本 |
2.25 | Windows 10,版本 1803 WDK | Windows 10 版本 1803(2018 年 4 月更新,Redstone 4) | Windows 10 版本 1803 或更高版本 |
2.23 | Windows 10,版本 1709 WDK | Windows 10 版本 1709 (Fall Creators Update, Redstone 3) | Windows 10 1709 版及更高版本 |
2.21 | Windows 10,版本 1703 WDK | Windows 10 版本 1703 (Creators Update, Redstone 2) | Windows 10 版本 1703 及更高版本 |
2.19 | Windows 10,版本 1607 WDK | Windows 10 版本 1607(周年更新,Redstone 1) | Windows 10 版本 1607,Windows Server 2016 和更高版本 |
2.17 | Windows 10,版本 1511 WDK | Windows 10 版本 1511(11 月更新,Threshold 2) | Windows 10 版本 1511,Windows Server 2016 和更高版本 |
2.15 | windows 10 WDK | Windows 10 版本 1507 (Threshold 1) | Windows 10 版本 1507,Windows Server 2016 和更高版本 |
2.0 | Windows 驱动程序工具包 (WDK) 8.1 | Windows 8.1 | Windows 8.1 及更高版本 |
1.11 | Windows 驱动程序工具包 (WDK) 8 | Windows 8 | Windows Vista 及更高版本 |
1.9 | windows 7 WDK | Windows 7 | Windows XP 及更高版本 |
1.7 | Windows Server 2008 WDK | Windows Vista Service Pack 1 (SP1),Windows Server 2008 | Windows XP 及更高版本 |
1.5 | Windows Vista WDK | Windows Vista | Windows XP 及更高版本 |