我有一个用电子生成器打包的js项目。我想用自签名证书对windows包进行签名。我的构建机器是Windows Server 2019 64位。节点版本12.18.2我使用电子生成器22.7.0。
我使用以下powershell命令在不同的windows机器上生成了pfx文件
New-SelfSignedCertificate -DnsName www.github.com -CertStoreLocation cert:LocalMachineMy -type CodeSigning
$pw = ConvertTo-SecureString -String sillypassword -Force –AsPlainText
Export-PfxCertificate -cert cert:localMachinemySOMELONGNUMBERFROMFIRST COMMAND -FilePath $env:USERPROFILEDesktopCert.pfx -Password $pw
我导出了具有适当值的CSC_LINK
和CSC_KEY_PASSWORD
,并正在运行electron-builder -p always --win
来发布包。
我得到以下错误
Exit code: 1. Command failed: C:Userstravis.cacheelectron-builderwinCodeSignwinCodeSign-2.6.0windows-10x64signtool.exe sign /t http://timestamp.digicert.com /f C:Userstraviscertificate_win.pfx /d My project /du https://github.com/org/myrepo /p 434b9bda7dbaf509beaef9779192a67fbe263d70af93716804959aa49662adb6 (sha256 hash) /debug C:Userstravisbuildorgmyrepobuildwin-unpackedMy project.exe
232
SignTool Error: An unexpected internal error has occurred.
233
234
Error information: "Error: Store::ImportCertObject() failed." (-2146893808/0x80090010)
235
236
SignTool Error: An unexpected internal error has occurred.
237
stackTrace=
238
Error: Exit code: 1. Command failed: C:Userstravis.cacheelectron-builderwinCodeSignwinCodeSign-2.6.0windows-10x64signtool.exe sign /t http://timestamp.digicert.com /f C:Userstraviscertificate_win.pfx /d My project /du https://github.com/org/myrepo /p 434b9bda7dbaf509beaef9779192a67fbe263d70af93716804959aa49662adb6 (sha256 hash) /debug C:Userstravisbuildorgmyrepobuildwin-unpackedMy project.exe
239
SignTool Error: An unexpected internal error has occurred.
240
226
Error information: "Error: Store::ImportCertObject() failed." (-2146893808/0x80090010)
227
228
SignTool Error: An unexpected internal error has occurred.
247
248
at C:Userstravisbuildorgmyreponode_modulesbuilder-utilsrcutil.ts:129:16
229
at ChildProcess.exithandler (child_process.js:310:5)
230
at ChildProcess.emit (events.js:315:20)
245
at maybeClose (internal/child_process.js:1021:16)
246
at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
249
From previous event:
250
at processImmediate (internal/timers.js:456:21)
251
From previous event:
258
at WinPackager.signApp (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcwinPackager.ts:357:27)
259
at WinPackager.doPack (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcplatformPackager.ts:244:16)
243
at WinPackager.pack (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcplatformPackager.ts:115:5)
244
at Packager.doBuild (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcpackager.ts:444:9)
241
at executeFinally (C:Userstravisbuildorgmyreponode_modulesbuilder-utilsrcpromise.ts:12:14)
242
at Packager._build (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcpackager.ts:373:31)
252
at Packager.build (C:Userstravisbuildorgmyreponode_modulesapp-builder-libsrcpackager.ts:337:12)
253
at executeFinally (C:Userstravisbuildorgmyreponode_modulesbuilder-utilsrcpromise.ts:12:14)
254
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
我可以在我专门为测试这种行为而创建的测试机上签名,但在Travis中失败了。我怎么能调试这种情况来知道我做错了什么。感谢
对于自签名证书,您可能需要首先检查该证书是否已导入到您的证书存储中。然后验证使用者名称设置是否正确。electronicbuilder(v22.6.0-v22.8.1(在windows商店应用程序签名时出现错误:https://github.com/electron-userland/electron-builder/issues/4931,但它可能与您的windows.exe签名有任何关系,也可能没有任何关系。