Auto-Py-to-Exe生成Windows EXE签名及InnoSetup安装器嵌入证书问询
可以实现,你完全可以将自签名证书的安装步骤集成到Inno Setup安装流程中,用户全程只需要按照向导点击下一步即可,无需执行任何复杂技术操作。
前置准备
- 导出你用于代码签名的自签名根证书公钥(
.cer格式,不要导出带私钥的.pfx文件,避免私钥泄露风险) - 将导出的
.cer证书文件放入Inno Setup的打包资源目录
Inno Setup 脚本修改
1. 开启安装包管理员权限
在脚本的[Setup]段添加如下配置,安装证书到系统根存储需要管理员权限:
[Setup] PrivilegesRequired=admin
2. 打包证书文件到临时目录
在[Files]段添加证书的打包规则,安装完成后会自动删除临时证书文件:
[Files] Source: "你的本地证书路径\my_sign_root.cer"; DestDir: "{tmp}"; Flags: deleteafterinstall
3. 添加静默安装证书的执行步骤
在[Run]段添加调用系统自带certutil工具安装证书的命令,全程后台隐藏执行:
[Run] Filename: "certutil.exe"; Parameters: "-addstore -f Root ""{tmp}\my_sign_root.cer"""; StatusMsg: "正在配置运行环境,请稍候..."; Flags: runhidden
验证说明
修改完脚本后重新打包安装包,你可以在之前的纯净Win7虚拟机中先做测试:
- 运行安装包,确认全程除了正常的UAC授权提示外没有其他额外弹窗
- 安装完成后查看系统证书存储,确认根证书已成功安装
- 启动你开发的GUI程序,确认杀毒软件不再弹出未知发布者的风险提示
内容的提问来源于stack exchange,提问作者Breini M.
相关产品推荐
相关产品推荐

