C# 以编程方式接受UAC提示

C# 以编程方式接受UAC提示,c#,windows-7,uac,C#,Windows 7,Uac,我有一个C#应用程序,需要使用管理权限运行。特别是,它在Windows7启动时加载,并在后台执行一些脚本。这个过程对于用户来说是完全不可见的,并且在执行时会被背景所覆盖。权限实现是通过清单文件实现的。现在,问题是我需要自动执行UAC提示符出现的步骤,并以不可见的方式接受它 这样的事情在C#中怎么做 我认为您需要做的是模拟一个具有管理员权限的用户 试试这个: 我以前用这种方法很成功,试试吧 UAC提示的全部要点是,如果用户不明确表示他们信任代码并希望它以管理员的身份运行,您就不能以管理员的身份以编

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


这样的事情在C#中怎么做

我认为您需要做的是模拟一个具有管理员权限的用户

试试这个:


我以前用这种方法很成功,试试吧

UAC提示的全部要点是,如果用户不明确表示他们信任代码并希望它以管理员的身份运行,您就不能以管理员的身份以编程方式运行代码。如果有一个简单的方法可以做到这一点,那么它将完全违背功能的目的,没有理由在开始时添加它。这就像在问如何不用钥匙开锁,或者如何不用密码进入保险箱。如果可以的话,这个功能一开始就没有什么意义了。
它在Windows 7启动时加载,并在后台执行一些脚本
-对我来说听起来像是一个完全无害的程序;)难道你就不能禁用UAC吗?如果是这样的话,也许你需要将其作为一项服务运行?最好的方法是修复你的应用程序,这样它就不需要升级才能运行。(为什么需要运行高架?)不可能绕过UAC提示符,这是设计的。“如果这是可能的”思想实验在这里很有用——如果可能的话,那就是恶意软件会做的,UAC将毫无意义。