使用提升的权限启动进程

时间:2014-02-25 19:04:29

标签: c#

我在C#中编写的一个进程在应用程序启动期间由另一个进程分叉。此过程在访问驱动程序时需要管理员权限,但父应用程序(分叉过程)是在用户模式下启动的。

我有两种方法可以想到: 1.更改清单,但UAC对话框对用户来说会很烦人。 2.与Linux rpm安装一样,使用超级用户安装应用程序并完全控制进程

还有其他更好的方法吗? 请指导

由于

1 个答案:

答案 0 :(得分:1)

请参阅Elevating process privilege programatically

您需要抛出UAC Elevation提示(可能很烦人)或以管理员身份运行root forfor进程。通过在ClickOnce或程序清单中声明它,您可以确保简单地双击可执行文件将自动提示提升。

如果最终用户的计算机启用了UAC,则某些时候会出现某种提示 ,因为没有合法的方法可以将子进程从非特权进程中提升。