众所周知,使用ClickOne发布程序简单方便,但有个限制就是不能使应用程序用Administrator权限运行。为了两者兼有,可以在启动处加上如下代码:
var wi = WindowsIdentity.GetCurrent();
var wp = new WindowsPrincipal(wi);
bool runAsAdmin = wp.IsInRole(WindowsBuiltInRole.Administrator);
if (!runAsAdmin)
{
var processInfo = new ProcessStartInfo(Assembly.GetExecutingAssembly().CodeBase);
processInfo.UseShellExecute = true;
processInfo.Verb = "runas";
Process.Start(processInfo); //以Administrator权限重新启动自己
}
else
{ //实际的启动代码}
本文介绍如何在使用ClickOne发布程序时,通过代码实现以管理员权限运行的应用程序,解决了不能使用管理员权限的问题。
4566

被折叠的 条评论
为什么被折叠?



