我可以将外部exe标记为"运行安全(未知发布者)"编程?

时间:2016-07-30 16:13:38

标签: c# vb.net windows install installer

所以我有自己的应用程序," main.exe"。在安全级别较高的某些计算机中,由于未知的发布者"会显示警告。

Unknown publisher warning

我正试图绕过"它

现在我知道正确的方法是签署程序集购买证书并成为已知的发布者然后它不会显示此警告,但证书并不便宜。

我的问题是,有没有办法可以运行我将在vb.net/C#中构建的不同的exe(如安装程序),那将标记以某种方式我的应用程序&#34 ; MAIN.EXE" as"安全运行"或者"信任"?因此它将在所有计算机中没有警告信息的情况下运行。

重要提示 - "安装人员"将以管理员权限运行。

2 个答案:

答案 0 :(得分:2)

经过大量尝试后,我得到了一个非常好的解决方法!

我在这里找到了这个Visual Studio 2015安装程序项目:https://visualstudiogallery.msdn.microsoft.com/f1cc3f3e-c300-40a7-8797-c509fb8933b9

Witch为您提供了创建和安装项目的选项。

下载并安装此插件后,您将能够将安装程序项目添加到主项目中。

Selection of a Setup Project

然后您需要选择安装程序将安装的项目: Project Selection for Setup

然后,您可以构建此安装程序项目,并获得2个安装文件: enter image description here

然后你就完成了!

现在,您可以在没有任何关于"未知发布者"的警告消息的情况下运行setup.exe,重要的是要注意您必须启动Setup.exe而不是Setup.msi并在启动Setup.exe时您必须将Setup.msi放在同一文件夹中。当它安装你的应用程序时,它会请求管理员权限,但它不会给你一个关于&#34的可怕警告信息;这是一个不安全的应用程序"。

安装你的应用程序后,你就可以运行它了(从你设置安装的位置),运行它我的意思是在安装目录中你将拥有你的应用程序exe文件,你可以运行它任何警告信息。

所以基本上发生的事情是你只需要在安装程序启动安装时给予管理员权限,但之后你的应用程序将被信任并且将在没有任何消息的情况下运行。

关于Setup.exe和Setup.msi,您可以使用IExpress将它们加入两个1 exe。

答案 1 :(得分:1)

可以在Microsoft博客上找到here这个问题的唯一正确答案。

关于声誉。这意味着,您需要使用由Comodo或Verisign等CA签署的官方证书对您的可执行文件进行正确签名。这是必需的,以便您可以跟踪您作为发布商的声誉。之后你需要建立声誉。这只需要时间,您的软件安装越多,您获得智能屏幕过滤​​器信任的可能性就越大。

如果您需要尽快使用受信任的可执行文件,换句话说,现在......购买自己的扩展验证或EV代码签名证书。正如微软博客文章中所述,建立声誉是不必要的:

  

“...由EV代码签名证书签署的程序可以立即执行   建立声誉......“