如何在c#中使用系统帐户运行的服务在域中查找用户全名

时间:2016-10-21 03:11:00

标签: c#

我的服务运行系统帐户我在下面的代码中找到了代码,当使用用户帐户运行时会提供正确的用户名,并在使用系统帐户运行时出错。当服务使用系统帐户运行时,有人可以帮助检查登录用户的全名。

private static string GetFullName()
{
    try
    {
        DirectoryEntry de = new DirectoryEntry("WinNT://" + Environment.UserDomainName + "/" + Environment.UserName);
        return de.Properties["fullName"].Value.ToString();
    }
    catch { return null; }
}

答案:而不是使用Environment.UserDomainName +" /" + Environment.UserName我手动传递了域名和用户名,然后解析了。

1 个答案:

答案 0 :(得分:0)

您可以单独获取名字和姓氏,然后可以返回如下,

private static string GetFullName()
{
    try
    {
        DirectoryEntry de = new DirectoryEntry("WinNT://" + Environment.UserDomainName + "/" + Environment.UserName);
        return de.Properties["FullName"].Value.ToString();
    }
    catch { return null; }
}