运行绕过UAC的应用程序

时间:2013-05-17 09:07:59

标签: c# file uac

我必须从我的WPF应用程序运行exe文件,但它仍然询问我是否真的想要打开它。

System.Diagnostics.Process.Start("fileToOpen.exe", "par1 par2");

有没有办法在没有显示UAC权限窗口的情况下打开文件?

1 个答案:

答案 0 :(得分:2)

根据最终客户,我根本不建议这样做;你反对系统安全,如果他们有UAC,这是有原因的。你正在制造安全风险(我相信你已经知道了)。

无论如何,一些解决方法:

假设您希望确保它永远不会出现,并根据您对其他答案的评论,那么您可以按照以下SO帖子执行此操作:Disabling UAC programmatically

  

将HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System中的EnableLUA DWORD值设置为0并重新启动。

问题是,这会完全禁用它(并且取决于最终客户)可能是非常不受欢迎的。

另一种解决方案是(来自同一来源):

  

您无法以编程方式禁用UAC,但可以强制程序从一开始就使用提升的权限运行,因此每次都不会提示。   这将导致它在启动时提示一次,但不是每次都需要访问时。   为此,您需要创建清单文件并设置

在阅读了更多内容之后,看起来你最好不要测试它而不是你最初的想法(禁用/忽略/预防)。再次,请参阅此帖子Selectively disabling UAC for specific programs on Windows Programatically