我正在尝试使用方法 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/