C# foreach(用户中的ManagementObject用户)不';我似乎无法检索所有本地帐户

C# foreach(用户中的ManagementObject用户)不';我似乎无法检索所有本地帐户,c#,local,user-profile,C#,Local,User Profile,我使用以下方法获取计算机上的所有本地用户帐户。它找到12个,但只处理第一个 ObjectQuery wql = new ObjectQuery(@"SELECT * FROM Win32_UserProfile"); ManagementObjectSearcher usersSearcher = new ManagementObjectSearcher(wql); ManagementObjectCollection users = usersSearcher.Get

我使用以下方法获取计算机上的所有本地用户帐户。它找到12个,但只处理第一个

 ObjectQuery wql = new ObjectQuery(@"SELECT * FROM Win32_UserProfile");
 ManagementObjectSearcher usersSearcher = new ManagementObjectSearcher(wql);
 ManagementObjectCollection users = usersSearcher.Get();
    
 Console.WriteLine("Users: " + "[" + users.Count + "]"); // Reports 12
       
      
 foreach (ManagementObject user in users)
 {
   Console.WriteLine("Checking User: " + GetNameFromSID(user["SID"].ToString()));
 }

似乎它曾经报告所有账目。是否有可靠的方法获取此信息?

您的意思是此代码以前工作正常,但现在不行?你调试代码了吗?有例外吗
GetNameFromSID
此方法的主要用途是什么?你也能分享它的代码吗?它找到12个,但只处理第一个意味着什么?什么处理配置文件?您是指
GetNameFromSID()
方法吗?你在用什么?