You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Advanced Installer的signtool后安装包仍显示未知发布者?

排查Advanced Installer签名后仍显示“未知发布者”的关键步骤

1. 确认数字证书的有效性与类型

  • 必须使用受信任的代码签名证书:不能使用自签名证书,需采用正规CA机构(如DigiCert、GlobalSign等)颁发的代码签名证书,这类证书才会被Windows系统认可。
  • 检查证书链完整性:在证书管理器中查看证书的「证书路径」,确保所有层级的证书均显示“此证书已正常”,缺失中级或根证书会导致系统无法验证发布者身份。

2. 验证Advanced Installer的签名覆盖范围

  • 确认主安装包已被签名:在Advanced Installer的「数字签名」面板中,务必勾选对最终生成的output-installer.exe进行签名,不能仅签名内部MSI或组件文件。
  • 覆盖所有嵌入可执行文件:若安装包包含.NET/Java子模块、辅助EXE/DLL、驱动文件等,需在签名配置中开启「对所有嵌入的可执行文件和MSI包签名」选项,避免因内部未签名文件导致发布者识别失败。

3. 确认签名流程的执行逻辑

  • 保证签名为最后一步操作:在构建流程中,签名必须在打包、压缩所有内容后执行,若先签名再修改安装包内容,会直接导致签名失效。
  • 查看签名构建日志:构建安装包时检查输出日志,确认signtool工具是否成功完成签名操作,排查是否存在证书密码错误、证书过期、文件权限不足等报错。

4. 验证系统对证书的信任状态

  • 导入证书到信任存储:将代码签名证书手动导入Windows的「受信任的根证书颁发机构」或「受信任的发布者」存储中,确保测试环境的系统能识别证书的发布者信息。
  • 检查证书有效期:确认证书处于有效期内,过期证书即使签名成功,系统也会判定为未知发布者。

5. 重置Windows SmartScreen缓存

Windows SmartScreen可能缓存旧的未签名安装包信息,可通过以下步骤重置:

  1. 以管理员权限打开命令提示符
  2. 执行命令:rundll32.exe advapi32.dll,ProcessIdleTasks
  3. 重启电脑后重新测试安装包

内容的提问来源于stack exchange,提问作者gumuruh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 18:48:24