Visual studio 2015 Visual Studio安装程序代码使用无效证书签名

Visual studio 2015 Visual Studio安装程序代码使用无效证书签名,visual-studio-2015,installation,code-signing,Visual Studio 2015,Installation,Code Signing,我正在Windows 7 SP1上使用VS 2015 CE和“Microsoft Visual Studio 2015安装程序项目”。生成MSI文件时,生成过程会自动将代码签名证书添加到生成的MSI文件中。直到今天,该证书仍然有效,当您从web服务器下载MSI时,没有任何警告。今天,IE开始显示一条警告消息,“此程序的签名已损坏或无效。”当我查看证书时,MSI文件的属性中会显示“此数字签名无效”。即使是我上周上传并运行正常的文件,现在也会显示此消息 我整天都在研究这个问题,但在我对这个过程的理解

我正在Windows 7 SP1上使用VS 2015 CE和“Microsoft Visual Studio 2015安装程序项目”。生成MSI文件时,生成过程会自动将代码签名证书添加到生成的MSI文件中。直到今天,该证书仍然有效,当您从web服务器下载MSI时,没有任何警告。今天,IE开始显示一条警告消息,“此程序的签名已损坏或无效。”当我查看证书时,MSI文件的属性中会显示“此数字签名无效”。即使是我上周上传并运行正常的文件,现在也会显示此消息

我整天都在研究这个问题,但在我对这个过程的理解上仍然存在一些漏洞。例如:

1) VS安装程序在哪里获得要应用于MSI的代码签名证书?我想它应该在我的证书存储中,但找不到它。据我所知,我从未生成过一个,除非它是作为安装的一部分完成的?我没有进行任何SignTool调用,在vdproj文件中也看不到任何关于证书的内容(有一个标记显示“SignOutput”=“11:FALSE”)。这一过程正在发生,并且自我开始使用安装程序以来一直自动发生


2) 如何让VS Installer应用有效的证书?我找到了很多不同的失败原因,比如因为它是SHA1,但我查看了最近从MS下载的MSI,它也使用SHA1,并且没有错误。我更愿意继续使用自动应用的证书,而不是购买一个证书并使用signtool应用它。

2017年3月15日,微软为其Visual Studio 2015安装程序项目扩展发布了一个更新,解决了这一问题

奇怪的是,这个更新并没有出现在工具标签下的扩展和更新中,但是在左边的在线部分下搜索“安装程序项目”允许我下载并安装最新版本。它位于以下链接:


此外,安装部分下的Visual Studio安装程序项目版本仍然显示版本1.0.0.2,即使更新的下载链接是2.1。不知道那里发生了什么,但重要的是,从安装程序项目创建MSI时,无效证书不再出现,下载时浏览器中的警告也消失了。

我也有类似的问题。IE或Edge下载后,我的安装项目显示“此程序的签名已损坏或无效”。我已经下载了我的VS2015(2.1版)的最新安装程序项目,部分问题已经解决。我再也没有这种麻烦了。但另一条警告信息是“文件不常下载,可能会损坏您的设备”。但一般来说,它不那么麻烦,因为用户可以选择“下载任何方式”和“运行”

我刚才无意中发现了这个已经发布的问题。不知道怎么回事,我在发帖时没有指出:看起来我没有luckI了,我已经安装了最新版本(VS2015的2.1版本,在扩展部分仍然显示为1.0.0.2),第二个问题仍然存在:Edge抱怨安装程序“不常下载,可能会损坏您的设备”和智能屏幕“阻止无法识别的应用程序启动。运行此应用程序可能会使您的电脑处于危险之中。”这种行为在VS2017及其相应的安装项目扩展中持续存在。