我公司希望阻止客户安装我们产品时出现的UAC弹出窗口。我们从VeriSign购买了证书(VeriSign Class 3 Code Signing 2010 CA),我收到了一份MyCompany.cer文件。
我通过双击并选择“个人”商店来安装证书。它现在出现在证书管理单元中,以及其他几个证书。 snapin说其预期目的是“代码签名”。我通过复制指纹获得了SHA1哈希。
我尝试使用此命令对msi进行签名:
signtool sign /sha1 <thumbprint> myInstaller.msi
并收到消息 “SignTool错误:未找到符合所有给定条件的证书。”
如果我放弃“/ sha1”,我会得到商店中大多数其他证书的清单 - 那些表示其预期目的的是“&lt; All&gt;”我的证书没有列出。
我做错了什么?
答案 0 :(得分:3)
这已经很老了,但我希望它有所帮助。
首先,您需要检查是否有该.cer文件的私钥,如果您打开它,您应该看到一个Key图标,然后是句子:
You have a private key for this certificate
请注意,您必须在生成de Key对(和CSR)的同一台计算机中安装证书。显然,如果您没有私钥,则无法签署任何内容。