【发布时间】:2017-06-12 19:17:37
【问题描述】:
我已阅读相关的 Stack Overflow 问题并尝试了以下代码:
WindowsIdentity identity = WindowsIdentity.GetCurrent();
if (null != identity)
{
WindowsPrincipal principal = new WindowsPrincipal(identity);
return principal.IsInRole(WindowsBuiltInRole.Administrator);
}
return false;
即使我手动确认当前用户是本地内置管理员组的成员,它也不会返回 true。
我错过了什么?
谢谢。
【问题讨论】:
-
当您的“当前用户”运行此代码并以管理员身份运行时,您的代码是否有不同的输出?
-
您必须以管理员身份运行代码。如果您通过 Visual Studio 运行,请先以管理员身份启动 VS。
-
啊,没有意识到它必须以管理员身份运行。我在一个 winform 应用程序中使用它,并希望能够确定当前用户是否是管理员用户。回到绘图板。谢谢。
-
@RufusL,是否可以检查当前用户是否具有应用程序的管理员权限,在无管理员模式下运行?
-
我相信是这样,让我在下面发布一个答案,你可以试试