我在InstallShield中有InstallScript微星安装程序项目。我想在安装产品的过程中创建自签名证书。那么,有没有可以在InstallScript代码中使用的windows API,或者有没有InstallScript函数可以让我在安装过程中创建自签名证书。
发布于 2019-04-27 18:40:34
不确定您是否可以从InstallShield处理它。您能给我们更多关于您的场景的详细信息吗?
若要生成自签名证书,可以使用powershell cmdlet。New-SelfSignedCertificate cmdlet允许创建用于测试目的的自签名证书(可能需要管理员权限)。
您还可以查看可能对您有用的Generate a self-signed certificate for code signing文章。
发布于 2019-05-05 10:07:12
虽然我认为您可以使用UseDLL和InstallScript中的朋友来做这件事,但是当您完成相关结构和函数的原型时,您可能会对纯C++实现更满意。
对于InstallScript或C++路由,您都必须了解C++层。它的核心是来自wincrypt.h的CertCreateSelfSignCertificate。您很快就会注意到,CertCreateSelfSignCertificate需要几个参数,其中一些参数需要通过调用其他函数进行初始化。因此,在一小段时间内,理解或实现这一点将感觉像是跳进了一个兔子洞。
但是SDK中有一个示例:cryptoapi/CreateCertificate。它只有549行,其中很大一部分是用来处理命令行的。你还可以通过搜索“CreateSelfSignCertificate example”找到其他几个例子。但不管怎样,这仍然不是一项微不足道的任务。
因此,您很可能会对另一种方法最满意,比如J.Tribbiani建议使用PowerShell。
https://stackoverflow.com/questions/55868168
复制相似问题