如何使用 WPF 在 Windows 7 中获取完整的用户名?

Posted

技术标签:

【中文标题】如何使用 WPF 在 Windows 7 中获取完整的用户名?【英文标题】:How can i get the Complete user name in Windows 7 using WPF? 【发布时间】:2013-04-29 13:58:14 【问题描述】:

我已经尝试过这个链接,但我只得到用户 ID 我想要用户的完整名称

Username in WPF

【问题讨论】:

您希望用户名来自哪里?是否在数据库中,是否在用户登录时检索它? ***.com/questions/3175004/… 我正在尝试在我的 WPF 应用程序中获取它,当前从 windows 机器登录的用户名(完整的用户名) 【参考方案1】:

这将为您提供在计算机上登录的用户的全名

Thread.GetDomain().SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
WindowsPrincipal principal = (WindowsPrincipal)Thread.CurrentPrincipal;
// or, if you're in Asp.Net with windows authentication you can use:
// WindowsPrincipal principal = (WindowsPrincipal)User;
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain))

    UserPrincipal up = UserPrincipal.FindByIdentity(pc, principal.Identity.Name);
    thisUsername = up.DisplayName;
    // or return up.GivenName + " " + up.Surname;

【讨论】:

以上是关于如何使用 WPF 在 Windows 7 中获取完整的用户名?的主要内容,如果未能解决你的问题,请参考以下文章

支持 Windows 7 并向后兼容的 WPF 图标规范

WPF 如何实现先执行完动画再关闭窗口

WPF程序在Windows 7下应用Windows 8主题

在 WPF 中获取 Windows 10 文本缩放值

如何从 WPF 访问 Windows.Devices.Scanners

将 win32 托管到 wpf 在 Windows 7 中不起作用