微软官方文档:Create a driver only update package

什么是 DUA

DUA(Driver Update Acceptable)目前还没有统一的中文译法。它是一种只更新驱动、不重新测试的提交方式:在一个已通过认证的提交基础上,替换其中的 INF 等非 PE 文件,重新打包签名后提交,无需再跑一遍 HLK 测试

典型场景:同一份驱动要分发给不同 OEM,只是 INF 里的机型标识、字符串等有差异。用 DUA 就能在原认证结果上做客制化,省掉重复的 HLK 验证。

DUA 能改什么、不能改什么

DUA 提交不允许新增或修改 PE 二进制文件——无论扩展名是什么,只要是 PE 格式就受限,常见的有:

  • .exe.dll.sys.drv

且原提交 INF 引用到的 PE 二进制不能删除。可以自由增删改的是非 PE 文件,典型如:

  • .inf.txt.pdf.prd

前提条件

  • 你已有一个包含驱动文件、且状态为已完成(Finalize) 的硬件提交——DUA 只对含驱动的提交开放。
  • 安装了较新版本的 HLK Studio。DUA Shell 用提交时最新的 HLK 格式生成,若你的 Studio 版本过旧,打开时会报 Failed to open package,需升级到最新版。

一、下载 DUA Shell

  1. 登录微软合作伙伴中心(Partner Center),进入 硬件(Hardware) 页面。
  2. 找到并进入要更新的目标提交详情页。页面顶部能看到该提交的处理流水线(Package Acceptance → Preparation → Scanning → Validation → Catalog creation → Manual review → Sign → Finalize),确认已全部完成。
  3. Packages and signing properties 区域,点击 Download DUA shell 下载 Shell 包。

在 Partner Center 提交详情页点击 Download DUA shell

如果你手上没有当前的驱动包,可以在同一页面下载已签名的驱动文件,从中获取 INF。

二、用 HLK Studio 打开 DUA Shell

重要:不要直接双击 .hlkx 文件打开 DUA Shell,必须从 HLK Studio 内部打开,否则不会进入 DUA 流程。

  1. 打开 HLK Studio,点击右上角的 Connect

    HLK Studio 右上角的 Connect

  2. 在弹出的 Choose Controller 对话框中,按下图编号操作:

    • ❷ 选择 Package 单选项;
    • ❸ 点击 Browse
    • ❹ 在文件选择器中选中刚下载的 Shell_…​.hlkx 文件(文件类型为 HLK (HCK) Package *.hlkx);
    • ❺ 点击 Open
    • 务必勾选 Open as Driver Update package(这一步决定了它以 DUA 方式打开);
    • ❼ 点击 OK

    选择 Package、Browse 到 Shell 包,并勾选 Open as Driver Update package

三、替换驱动程序

包加载后会进入 Package 选项卡,右侧可见其 Target(如示例中的 Lenovo Process Management),Test Status 各项均为 0——因为 DUA 复用原有测试结果,不重新测试。

  1. Drivers Folder 中,右键当前驱动程序路径,选择 Replace Driver

    右键驱动路径,选择 Replace Driver

  2. 在弹出的 Browse For Folder 对话框中,选中包含新驱动包的文件夹,点击 OK

    选择新驱动所在文件夹并确定

注意:替换进来的驱动包必须遵守 DUA 规则——不得新增/修改 PE 二进制文件,且驱动文件的相对路径要与 INF 中声明的完全一致。

四、重新打包并签名

替换完成后,对驱动重新打包并签名。

  1. 点击 Create Package
  2. Signing Options 中选择 Use the certificate store(❶),点击 OK(❷)。
  3. 在弹出的 Windows Security / Package Signing 对话框中,选择用于签名的代码签名证书,点击 OK(❸)。

选择证书库签名,并挑选代码签名证书

正式提交微软的 DUA 包必须使用 EV(扩展验证)代码签名证书。签名成功后,Drivers Folder 的 Signability 列会显示绿色对勾。

打包完成后会生成新的 .hlkx 文件。

五、提交微软审核

回到合作伙伴中心,在原提交详情页的 Packages and signing properties 区域点击 Upload new,创建一个新的硬件提交并上传刚生成的 .hlkx 文件,等待微软审核签名。

在 Partner Center 点击 Upload new 上传 DUA 包

小结

DUA 的完整链路:

Partner Center 下载 Download DUA shell → HLK Studio 用 Connect → Package → Open as Driver Update package 打开 → Replace Driver 换上新驱动包 → Create Package 签名生成 .hlkx → Partner Center Upload new 提交。

只要改动局限于 INF 等非 PE 文件,DUA 就能让你跳过重复的 HLK 测试,快速产出面向不同 OEM 的客制化认证包。