[c#]判定当前软件是否用管理员权限打开
有时一些软件的逻辑中需要使用管理员权限对某些文件进行修改时,那么该软件在执行或者打开的场合,就需要用使用管理员身份运行才能达到效果。那么在c#里,如何判定该软件是否是对管理员身份运的呢?
1.取得当前的windows用户。
2.取得当前windows用户的组成员身份。
3.判当前windows用户的组成员是否是管理员身份。
确认代码如下:
// 取得当前windows用户
System.Security.Principal.WindowsIdentity identity = System.Security.Principal.WindowsIdentity.GetCurrent();
// 取得windows用户的组成员身份
System.Security.Principal.WindowsPrincipal principal = new System.Security.Principal.WindowsPrincipal(identity);
// 判定组成员是否是管理员身份用户组, true:管理员身份; false:非管理员身份
principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator);