Microsoft SmartScreen – 使用InnoSetup安装程序暂停?

我总是使用InnoSetup进行打包和发布。 用户使用链接下载应用程序,例如: https : //oursite.com/codesigned/mysetup.exe

直到现在,它一直工作,但最近我不得不续约我的代码签名证书,因为它过期了。 更新后,我有SmartScreen问题,每个用户下载应用程序,并得到这是以前没有的Smartscreen。

我已经使用signtoo.exe verify /pa innosetup-made-myexe.exe ,它显示成功,我也做了与Windows Application Certification Kit的validation,显示它已通过,但与警告,所有这些WARNNINGS主要由InnoSetup生成

如何对绑定JavaFX应用程序时创build的可执行启动器进行代码签名?

如何从可执行文件上的多个/双重代码签名中检索信息

应用程序签名/validation

VeriSign Class 3证书不被Windows信任?

一个.SPC文件签名一个Windows应用程序?

在这里你可以find输出,在InnoSetup上显示WARNINGS的例子:

https://docs.google.com/document/d/11frW_GxI0xSVcrAXh4_rqcKBQSAErmAlpYKj4xzQi4o/pub

我该如何解决这个问题?

(还不知道它的标准代码签名和EV代码签名问题?我已经使用了几年的标准代码签名,它一直工作,我可以升级到EV代码签名,但我怎么能确保它不是InnoSetup编译器问题?可以看到WARNNINGS已经在InnoSetup上面的url中显示

请指教。

编辑:

以validation其innosetup或代码签名问题(请参阅https://stackoverflow.com/a/29067585/285594 )我已经完成以下操作:

一)从microsoft我已经下载的文件调用winqual.exe不需要innosetup

b)我的代码签名winqual.exe并上传到我的同一台服务器

c)我下载了与Internet Explorer相同的文件,它的工作原理没有向我展示SmarTScreen

现在是否有任何意义,如果innosetup是这个问题的主要原因?

Windows Phone 8.1公司简介

便宜的Windows驱动程序签署64位Windows 7

为什么Windows不能find我的证书的颁发者?

如何使用GoDaddy中的.SPC或.PEM文件签署代码(.EXE文件)(使用Ubuntu)?

Windows内核驱动程序代码签名和SHA256

如果您认为问题归因于未签名的卸载程序,请确保相应地设置您的InnoSetup项目的SignTool指令。 并确保SignedUninstaller指令的认值yes 。

引用http://www.jrsoftware.org/ishelp/index.PHP?topic=setup_signtool

指定用于对设置进行数字签名的签名工具的名称和参数( 如果SignedUninstaller设置为yes ,则卸载 )。 当安装程序具有有效的数字签名时,用户在启动时不会看到“未识别的程序”警告。

如果要将NXCOMPAT和DYNAMICBASE标志设置为卸载程序,则可以创建一个sign.bat批处理文件,该文件既可以调用signtool.exe ,也可以调用editbin.exe :

@echo off editbin.exe /NXCOMPAT /DYNAMICBASE %1 signtool.exe sign ... %1

这些调用需要按照这个顺序,否则editbin.exe会打破签名。

然后在SignTool指令中使用sign.bat而不是signtool.exe 。

虽然我不认为这是必要的,也没有任何帮助。

我认为这是正常的行为。 当您的软件收集足够的“喜欢”=下载或安装SmrtScreen将自动关闭此消息。

这真是令人讨厌的功能,因为每个软件版本,您需要等待适当的时间,而软件变得“流行”,并被认为是安全的(没有证书或防病毒方法可以解决它)。

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...