我看了相关的堆栈溢出的问题,并尝试了下面的代码:如何检查当前用户是管理员组的C#
WindowsIdentity identity = WindowsIdentity.GetCurrent();
if (null != identity)
{
WindowsPrincipal principal = new WindowsPrincipal(identity);
return principal.IsInRole(WindowsBuiltInRole.Administrator);
}
return false;
它没有返回true,即使我已经手动证实,目前用户是本地内置管理员组的成员。
我缺少什么?
谢谢。
做你的代码有不同的输出,当你的“当前用户”运行这段代码并运行它为管理员? –
您必须以管理员身份运行代码。如果您正在运行Visual Studio,请首先以管理员身份启动VS. –
啊,没有意识到它必须以管理员身份运行。我在Winform应用程序中使用它,并希望能够确定当前用户是否是管理员用户。回到绘图板。谢谢。 –