【问题标题】:How to get 'Windows 10' user first & last name with offline DC如何使用离线 DC 获取“Windows 10”用户的名字和姓氏
【发布时间】:2018-01-24 10:30:31
【问题描述】:

如何在 Windows 10 中获取用户的名字和姓氏,而无需连接到指定(或在最坏情况下登录)帐户名的域?机器至少曾经连接到域控制器(笔记本电脑)。

我尝试使用 UserPrincipal(它显然会在 LDAPException 内部抛出 PrincipalException)。还搜索了许多线程(到目前为止,所有线程都是关于连接 DC 的情况)。

【问题讨论】:

  • 你想得到哪个用户?
  • 域用户。可能使用给定的帐户名称 (SamAccountName)。在最坏的情况下,当前登录会这样做。

标签: c# windows authentication offline domaincontroller


【解决方案1】:

试试这个:

public static void GetUsers()  
{  
     SelectQuery sQuery = new SelectQuery(“Win32_UserAccount”,“Domain=’yourdomain’”);  

     try  
     {  
            ManagementObjectSearcher mSearcher = new ManagementObjectSearcher(sQuery);  

            Console.WriteLine(“User Accounts\n”);  

            foreach (ManagementObject mObject in mSearcher.Get())  
            {  
                // Console.WriteLine(mObject[“Name”]);  
                // your logic
            }  
      }  
      catch (Exception ex)  
      {  
            Console.WriteLine(ex.Message);  
      }  


 } 

【讨论】:

  • 不幸的是,它和 PrincipalContext 一样工作。如果 DC 可用,一切正常。没有 DC 结果是空的。没有条件参数和连接到 DC 结果与来自 PrincipalContext 的 ContextType=Machine 相同。
猜你喜欢
  • 1970-01-01
  • 2019-01-06
  • 2012-04-29
  • 2016-08-01
  • 1970-01-01
  • 2020-02-15
  • 2021-01-16
  • 2022-08-04
  • 2017-06-26
相关资源
最近更新 更多