c# - 从共享文件夹启动 .NET 控制台应用程序时禁用 "The publisher could not be verified"

标签 c# .net-4.0 process

我正在尝试使用方法 Process.Start 从共享网络文件夹运行 .NET 控制台应用程序。

每次控制台应用程序启动时,我都会收到消息“无法验证发布者”,并且 Windows 会要求用户确认。我怎样才能禁用这个对话框?我不想购买数字证书。

最佳答案

当您使用“Process.Start”时,在 .net 应用程序中

使用功能 Process.StartInfo.UseShellExecute = false。

所以...

进程 proc = new Process(); proc.StartInfo.UseShellExecute = false;

它的作用是允许您直接启动 EXES(并且仅是 exe),而无需使用资源管理器(shell)。 这将绕过任何 IE 安全区域检查。默认情况下,资源管理器包含 IEZone 检查,因此将 如果您运行的应用程序不“受信任”(特别是在受信任区域中),则会向您发出安全警告。

现在,如果您想启动“PDF”,则不能使用“false”。这仅适用于前任。

最后一点信息:

http://technet.microsoft.com/en-us/library/bb457006.aspx

http://technet.microsoft.com/en-us/library/dd349795(WS.10).aspx

微软代表刚刚向我提供的这些信息可能会提供一种通过使用软件限制策略来信任签名应用程序的发布者的方法。我还没有研究过这个问题,但是对于那些需要进一步继续这个问题的人来说......这看起来像是解决第 (1) 部分的另一种方法。

关于c# - 从共享文件夹启动 .NET 控制台应用程序时禁用 "The publisher could not be verified",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8308344/

相关文章:

.net - 身份、WIF、SAML 和第 3 方 IdP

c++ - 如何使用 C++ 在 Linux 中检测进程何时终止?

ruby-on-rails - 我将如何产生 Heroku 工作人员来分而治之关键字列表?

C#进程启动焦点问题

C# MySQL 搜索查询

c# - .NET 中的堆栈与堆

c# - 如何创建 LINQ 表达式来调用方法?

c# - 使用c#获取两个不同对象的公共(public)属性

c# - c# 4 中的 DLR 和 Javascript 解释?

.net-4.0 - 更新.net 4.0 machine.config似乎没有效果