【问题标题】:Accept UAC Prompt Programmatically以编程方式接受 UAC 提示
【发布时间】:2013-07-06 07:29:44
【问题描述】:

我有一个需要以管理权限运行的 C# 应用程序。特别是,它在 Windows 7 启动时加载并在后台执行一些脚本。此过程对用户完全不可见,并且在执行时被背景覆盖。权限实现是通过清单文件实现的。现在,问题是我需要自动化 UAC 提示出现的步骤,并且不可见地接受它。

如何在 C# 中完成类似的操作?

【问题讨论】:

  • UAC 提示的全部要点是,您不能以管理员身份以编程方式运行代码,除非用户明确表示他们信任它并希望让它以管理员身份运行。如果有一种简单的方法可以做到这一点,那么它将完全破坏该功能的目的,就没有理由一开始就添加它。这就像问如何在没有钥匙的情况下打开门,或者在没有密码的情况下进入保险箱。如果可以,那么一开始就存在该功能并没有多大意义。
  • It loads at Windows 7 start-up and executes a few scripts in the background - 对我来说听起来像是一个完全无害的程序 ;)
  • 那你不能禁用 UAC 吗?
  • 如果是这种情况,那么也许您需要将其作为服务运行?
  • 最好的方法是修复您的应用程序,使其不需要提升即可运行。 (为什么它需要运行提升?)绕过 UAC 提示是不可能的,这是设计使然。 “如果这可能会怎样”的思想实验在这里很有帮助——如果可能,那么这就是恶意软件会做的事情,而 UAC 将毫无意义。

标签: c# windows-7 uac


【解决方案1】:

我认为您要做的就是冒充具有管理员权限的用户。

试试这个:http://msdn.microsoft.com/en-us/library/chf6fbt4.aspx

这个方法我已经成功了,试一试!

【讨论】:

    猜你喜欢
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    • 1970-01-01
    • 2017-05-23
    • 1970-01-01
    • 2014-12-02
    • 1970-01-01
    相关资源
    最近更新 更多