简体   繁体   English

摆脱Windows中可执行文件的“发布者未验证”警告

[英]Get rid of “Publisher Unverified” warnings in Windows for executables

I have made an application for Windows & everytime I run the application by opening the executable file I get the "Publisher Unverified" warning in Windows. 我已经为Windows创建了一个应用程序,每次我通过打开可执行文件运行该应用程序时,都会在Windows中收到“发布者未验证”警告。 It is fine if I was the only audience for this app but thats not the case. 如果我是该应用程序的唯一受众,那就很好,但事实并非如此。 Is there any way to program my app such that this message does not show up for the users. 有什么办法可以对我的应用进行编程,以使该消息不会对用户显示。

The only way to do this is to obtain and use a code signing certificate from a trusted source. 唯一的方法是从受信任的源获取并使用代码签名证书。 Microsoft calls this Authenticode . Microsoft将其称为Authenticode

Unfortunately for the little guy, these cost. 对于小家伙来说不幸的是,这些代价。 Verisign sells theirs for about four hundie a year. 威瑞信(Verisign)每年大约卖出四千英镑。

Here are some starting points you should read about Authenticode: 这是您应该阅读有关Authenticode的一些起点:

http://msdn.microsoft.com/en-us/library/ms537359(VS.85).aspx http://msdn.microsoft.com/en-us/library/ms537359(VS.85).aspx
http://technet.microsoft.com/en-us/library/cc750035.aspx http://technet.microsoft.com/en-us/library/cc750035.aspx
http://msdn.microsoft.com/en-us/library/aa379872(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa379872(VS.85).aspx

Some certificate dealers: 一些证书经销商:

http://www.verisign.com http://www.verisign.com
http://www.thawte.com http://www.thawte.com
http://www.globalsign.net http://www.globalsign.net
http://www.geotrust.com http://www.geotrust.com

For a cheaper code signing certificate, you can use Comodo. 要获得更便宜的代码签名证书,可以使用Comodo。 There is a reseller called KSoftware which sells their certificates for $99/yr: 有一家名为KSoftware的转销商,每年以$ 99的价格出售其证书:

http://www.ksoftware.net/code_signing.html http://www.ksoftware.net/code_signing.html

I used them a few years ago and had no problems. 几年前我用过它们,没有问题。

You can then use SignTool from the .net SDK to sign your EXE files. 然后,您可以使用.net SDK中的SignTool对EXE文件进行签名。 There is a tutorial here: 这里有一个教程:

http://www.tech-pro.net/code-signing-for-developers.html http://www.tech-pro.net/code-signing-for-developers.html

I think there is a way to resolve this. 我认为有办法解决这个问题。 We need to add digital signature to the executables. 我们需要将数字签名添加到可执行文件中。 The way to add digital signatures is very nicely outlined at, 很好地概述了添加数字签名的方法,

Basically we will use OpenSSL to create our own digital signatures and then use the SignTool application by Microsoft to add it to our executable. 基本上,我们将使用OpenSSL创建我们自己的数字签名,然后使用Microsoft的SignTool应用程序将其添加到我们的可执行文件中。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM