VB6数字签名的EXE在Windows 8 SmartScreen中显示为Unknown Publisher

时间:2014-08-06 14:49:13

标签: vb6 windows-8.1 sign signtool

我编译了一个VB6应用程序,并在编译后使用包含此命令的批处理文件对其进行数字签名:

signtool sign /f apt.pfx /p MyPassword d:\upload\service_pack_UK_BETA.exe

如果我右键单击EXE,我可以在文件属性中看到数字签名。但是,如果人们下载该文件并尝试在Windows 8中运行它,则会在SmartScreen中收到来自Unknown Publisher的消息。

我读过这篇文章http://social.msdn.microsoft.com/Forums/windows/en-US/00813d25-d258-40d8-b03a-c4468959f311/smartscreen-shows-unknown-publisher-even-though-signed-correctly-using-a-trusted-certificate?forum=winformssetup,但他们推荐的解决方案无法在VB6中实现。

如何签署EXE以便SmartScreen接受它?

1 个答案:

答案 0 :(得分:1)

请参阅http://blogs.msdn.com/b/vsnetsetup/archive/2013/01/09/windows-smartscreen-prevented-an-unrecognized-app-from-running-running-this-app-might-put-your-pc-at-risk.aspx,特别是帖子的最后两句话

Once this is done, the SmartScreen will continue to warn about the application
until the certificate develops a reputation. But it would display a valid
publisher name instead of unknown publisher.

Windows 8中的SmartScreen维护有效且受信任的发布者证书列表(以及是否经常遇到签名文件)。当遇到新的发布者证书时,即使证书链良好且受信任,它也不会被添加到受信任的发布者列表中,直到有足够的命中保证,Microsoft称之为SmartScreen应用程序信誉。

来源: