微软新出了 10 操作系统后,推出了 硬件兼容性计划。而 Lab Kit ( HLK) 是一个测试框架,用于测试 10 以及从 2016 开始的所有 版本的硬件设备。微软的官方描述如下:
“ Lab Kit ( HLK) 是一个测试框架,用于测试 10 以及从 2016 开始的所有 版本的硬件设备。 你的产品必须通过使用 HLK 进行的某些测试,才有资格加入 硬件兼容性计划。”
简单来说就是,我们的驱动程序想要在 10 操作系统(某特定版本以后的版本)上加载,必须要加入 硬件兼容计划。
本文档介绍了如何构建测试环境,如何实现驱动程序的测试,以及如何创建 硬件兼容性计划 提交包等内容。 Lab Kit 中包含的测试,并说明了如何构建测试环境、如何实现驱动程序和系统测试的自动化,以及如何创建参与 硬件兼容性计划所需的提交包。
微软官方描述文档:
要求
1.EV代码签名证书(必须是微软指定的 CA公司,比如,申请地址),进行驱动中心账户申请,对驱动程序、HLK测试结果进行数字签名。
2.HLK测试环境,HLK测试服务器,需要安装 HLK 控制器和 HLK (下载链接参考微软官方描述文档);测试系统windows10驱动签名,根据驱动程序配置 32bit 和 64bit 操作系统
3 .成为 开发者,注册链接:
步骤
下面以我司软锁驱动测试和签名的过程为例,详细讲解一下加入 硬件兼容性计划 的操作步骤。
驱动测试流程
第一步windows10驱动签名,找三台计算机作为签名测试机器,因为我们的驱动分64和32位版本,所以需要一台服务器,一台64位系统(下称“64位机”),一台32位系统(下称“32位机”)。
第二步,将编译好的驱动文件分别对应拷贝到32位机和64位机上windows10驱动签名 微软驱动程序签名,即WHQL认证,微软徽标认证 ,Win10内核驱动签名的步骤,注意驱动文件必须带inf文件,使用.exe(这是我们内部开发的一款加载驱动的软件)在这两台电脑上加载驱动。将签名锁(即EV证书所在的UKEY)插在服务器机器上,文件签名时会用到。
第三步,在服务器机器上打开HLK 工程,创建一个。如下图所示。
第四步,切换到标签下,左上角下拉框选择【】,左侧边栏选择【 】,搜索我们的驱动文件名称,然后就可以查看到我们在32位机和64位机上加载的两个驱动,勾选这两个驱动。如下图所示。
第五步,测试,切换到Tests标签下,勾选 Code …… 然后左上角点击【Run 】,等待测试结果,大约需要半小时。
第六步,测试成功后,需要进行打包,切换到标签下,通过【Add 】选择驱动文件所在的文件夹,在弹出的属性中选择驱动对应的版本,【】下选全选,然后点击右下方的【 】进行打包。如下图所示。
第七步,此时会弹出签名方法,选择中间的【Use the store】。然后选择【EV代码签名证书】进行签名(这也是签名锁插在服务器端的原因),需要有密码。如下图所示。
第八步,文件打包后会生成一个以.hlkx结尾的文件,注意这个文件不能直接上传微软验证,需要将其后缀改为.zip然后解压重新使用的zip工具压缩,再修改文件结尾为.hlkx后,再提交微软审核(具体原因不确定)。
提交微软审核
第一步
登录微软在线账户,网址:
输入账户名密码登录。
第二步,点击【 new 】,创建一个项目名称,然后添加已经打包好的测试文件(上文中的.hlkx文件)。如下图所示。
第三步,在【what type of 】选择一个(原则上随便选)类型,我们选择【】,输入版本号和日期,然后提交。等待最终的结果。如下图所示。
第四步,所有步骤都是自动进行,完成后,打开【More】按钮,通过下载按钮下载签名后的驱动文件。
以上WHQL认证流程可以简单归纳为以下几步
申请EV代码签名证书,必须是微软指定CA公司,如,证书申请地址
2. 用申请好的EV证书申请微软认证帐号。
3. 与微软签订电子协议。
4. 使用微软提供的测试平台HLK测试,生成测试报告。
5. 生成测试报告与驱动程序包,并用数字证书签名。
6. 将100%通过测试并签署后的文件上传微软并等待微软审核。
7. 通过审核,获得微软驱动数字签名,同时获得微软LOGO使用授du。