首页 > 学院 > 开发设计 > 正文

C#编写以管理员身份运行的程序

2019-11-17 02:33:24
字体:
来源:转载
供稿:网友
C#编写以管理员身份运行的程序
using System;using System.Collections.Generic;using System.Linq;using System.Windows.Forms;namespace MyWebBrowser{    static class PRogram    {        /// <summary>        /// 应用程序的主入口点。        /// </summary>        [STAThread]        static void Main()        {            //获得当前登录的Windows用户标示             System.Security.Principal.WindowsIdentity identity = System.Security.Principal.WindowsIdentity.GetCurrent();            System.Security.Principal.WindowsPrincipal principal = new System.Security.Principal.WindowsPrincipal(identity);            //判断当前登录用户是否为管理员             if (principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator))            {                //如果是管理员,则直接运行                 application.EnableVisualStyles();                Application.SetCompatibleTextRenderingDefault(false);                Application.Run(new Form1());            }            else            {                //创建启动对象                 System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();                //设置运行文件                 startInfo.FileName = System.Windows.Forms.Application.ExecutablePath;                //设置启动动作,确保以管理员身份运行                 startInfo.Verb = "runas";                //如果不是管理员,则启动UAC                 System.Diagnostics.Process.Start(startInfo);                //退出                 System.Windows.Forms.Application.Exit();            }        }    }}

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表