Privilegio de administrador de C#- comprobación
.net privileges (2)
Sé que hay algunas preguntas similares. Pero quiero comprobar una sola cosa.
Solo quiero saber si el programa se ejecuta como administrador. Quiero comprobarlo porque quiero editar algunos archivos protegidos. El usuario no tiene que ser administrador. Solo quiero saber si mi aplicación tiene derechos para editar algunos archivos protegidos que se pueden editar cuando se ejecuta como Administrador.
Aquí está la respuesta de @ atrljoe convertida en una sola línea usando el último C #:
using System.Security.Principal;
static bool IsElevated => new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator);
Esto devolverá un bool válido.
using System.Security.Principal;
bool isElevated;
using (WindowsIdentity identity = WindowsIdentity.GetCurrent())
{
WindowsPrincipal principal = new WindowsPrincipal(identity);
isElevated = principal.IsInRole(WindowsBuiltInRole.Administrator);
}