131 lines
3.8 KiB
Plaintext
131 lines
3.8 KiB
Plaintext
|
||
windows 付费开发者平台 下载工具
|
||
https://my.visualstudio.com/Downloads?q=HLK
|
||
|
||
旧版WDK EWDK下载地址
|
||
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/legacy-wdk-downloads
|
||
|
||
|
||
|
||
EWDK 还需要 .NET Framework 版本 4.7.2
|
||
https://learn.microsoft.com/zh-cn/dotnet/framework/get-started/system-requirements
|
||
|
||
SDK
|
||
https://learn.microsoft.com/zh-cn/windows/apps/windows-sdk/downloads-archive
|
||
|
||
|
||
hlk官网教程
|
||
https://learn.microsoft.com/en-us/windows-hardware/test/hlk/
|
||
|
||
|
||
hck官网教程
|
||
https://learn.microsoft.com/en-us/previous-versions/windows/hardware/hck/jj124227(v=vs.85)
|
||
|
||
|
||
|
||
服务端和客户端的版本匹配
|
||
https://learn.microsoft.com/en-us/windows-hardware/test/hlk/what-s-new-in-the-hardware-lab-kit
|
||
|
||
CodeQL
|
||
https://github.com/github/codeql-cli-binaries/releases
|
||
C:\Users\wyc\.codeql
|
||
https://github.com/github/codeql-action/releases/tag/codeql-bundle-v2.15.4
|
||
|
||
|
||
|
||
codeQL 版本匹配文档
|
||
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/devtest/static-tools-and-codeql?tabs=whcp%2Clatest#select-the-appropriate-codeql-version-for-your-driver
|
||
|
||
|
||
Win + R cmd sysdm.cpl 获取系统名称
|
||
WIN-IKLOH4EJHHA
|
||
|
||
net share 查看hlkinstall共享状态
|
||
|
||
\\WIN-IKLOH4EJHHA\HLKInstall\Client\Setup.cmd
|
||
Win + R cmd
|
||
|
||
|
||
把当前启动项的 内核调试开关 打开
|
||
Bcdedit /debug on
|
||
开启调试模式
|
||
bcdedit /set {current} testsigning on
|
||
|
||
信任证书
|
||
cd /d C:\DVL
|
||
certutil -addstore -f Root Psc_Driver_Cert.cer
|
||
certutil -addstore -f TrustedPublisher Psc_Driver_Cert.cer
|
||
certutil -store Root | findstr /i Psc_Driver_Cert
|
||
certutil -store TrustedPublisher | findstr /i Psc_Driver_Cert
|
||
|
||
|
||
# 内核输出
|
||
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter" /v IHVDRIVER /t REG_DWORD /d 0xFFFFFFFF /f
|
||
shutdown /r /t 0
|
||
|
||
|
||
驱动类型
|
||
Legacy Driver 不参与 PnP 管理、不绑定设备、通常用 sc create 启动的驱动
|
||
PnP Driver 由系统自动加载、绑定到设备、受 PnP 管理的驱动 必须写 INF
|
||
Filter Driver 不直接控制设备,而是“挂在别人上面”拦截请求
|
||
|
||
三者核心区别(重点对比)
|
||
特性 Legacy PnP Filter
|
||
是否绑定设备 ❌ ✔ ✔(间接)
|
||
是否需要 INF ❌ ✔ ✔
|
||
是否 HLK 支持 ❌ ✔ ✔
|
||
是否支持 PnP 生命周期 ❌ ✔ ✔
|
||
是否可手动 sc 启动 ✔ ❌ ❌
|
||
复杂度 低 高 很高
|
||
|
||
|
||
|
||
历史演进
|
||
HCT (Hardware Compatibility Test Kit) 更像“硬件兼容性测试套件” →
|
||
WLK (Windows Logo Kit) 强调 Windows Logo Program →
|
||
HCK (Windows Hardware Certification Kit) 强调硬件认证 →
|
||
HLK (Windows Hardware Lab Kit) 强调一整套实验室测试框架
|
||
|
||
|
||
HCT / WLK / HCK / HLK:测试工具链的代际名称。
|
||
WHQL:你把测试结果提交上去之后,微软给你认证/签名的那一层
|
||
|
||
|
||
WHQL 是微软那套 Windows Hardware Quality Labs 认证签名结果。官方文档现在的说法是:
|
||
驱动包通过 HLK 测试后,WHQL 可以对驱动包做数字签名;拿到的 WHQL release signature
|
||
可用于 Windows Update 分发。
|
||
|
||
|
||
XP 前后:看 HCT
|
||
Windows 7 / Server 2008 这代:看 WLK 1.6
|
||
Windows 8 / 8.1 这代:看 HCK 2.0 / 2.1
|
||
Windows 10 / 11、Server 2016+:看 HLK
|
||
WHQL:不是 kit 代号,是你最后要拿的微软认证签名结果。
|
||
|
||
|
||
|
||
|
||
开发框架名词
|
||
WDM:底层驱动模型
|
||
WDF:基于 WDM 的驱动框架
|
||
KMDF:WDF 的内核态分支
|
||
UMDF:WDF 的用户态分支
|
||
|
||
|
||
|
||
|
||
|
||
第一步
|
||
安装hlk服务端
|
||
https://learn.microsoft.com/zh-cn/windows-hardware/test/hlk/getstarted/proxy-step-1--install-the-hlk-controller?source=recommendations
|
||
|
||
|
||
FAQ
|
||
https://learn.microsoft.com/zh-cn/windows-hardware/test/hlk/user/troubleshooting-windows-hlk-setup
|
||
|
||
|
||
download.microsoft
|
||
|
||
|
||
各个版本win10 whql兼容情况
|
||
https://zhuanlan.zhihu.com/p/378943792 |