Я пытаюсь найти, является ли пользователь, который я идентифицирую, членом локальной группы «Администраторы».Найти, если указанный пользователь (строка) является членом локальной группы «Администраторы»
Но мой код ничего не делает ...
Пожалуйста, смотрите мне код ниже.
Кроме того, это выполняется в моем public void Form1_Load(object sender, EventArgs e) {}
, поэтому это делается каждый раз при запуске приложения.
string localUser = WindowsIdentity.GetCurrent().Name.ToString();
char[] trimmingsEnd = { 'a', 'd', 'm', 'i', 'n' };
string trimmedlocalEnd = localUser.TrimEnd(trimmingsEnd);
char[] trimmingsFront = { 'C', 'o', 'm', 'p', 'u', 't', 'e', 'r', '\\' };
string trimmedlocalUser = trimmedlocalEnd.TrimStart(trimmingsFront);
WindowsIdentity windowsIdentity = new WindowsIdentity(trimmedlocalUser);
WindowsPrincipal principal = new WindowsPrincipal(windowsIdentity);
bool IsAdmin = principal.IsInRole("BUILTIN\\" + "Administrators");
if (IsAdmin == false)
MessageBox.Show("not part of admin");
if (IsAdmin == true)
MessageBox.Show("part of admin");
Он загружается ... хорошо должно быть. У меня есть другие элементы, такие как «Настройки» и «Проверка UAC», и они загружаются без ошибок. – crlic306
Если вы отредактируете свой ответ и добавите 4 пробела перед своим кодом, он будет отформатирован как код. Добро пожаловать в переполнение стека! – DanM7
Спасибо DanM :) –