WMI枚举Win32_GroupUser友好输出
问题描述:
我想枚举本地计算机上的所有现有组。WMI枚举Win32_GroupUser友好输出
这就是我试图使用WMI:
string _class = "Win32_GroupUser";
string namespace = "\\\\.\\ROOT\\cimv2";
ManagementClass _class = new ManagementClass(namespace + ":" + class);
foreach (ManagementObject _object in _class.GetInstances())
{
richTextBox1.AppendText((_object["GroupComponent"].ToString()));
}
输出例如:
\桌面2MSGC9J \ ROOT \ CIMV2:Win32_Group.Domain = “桌面2MSGC9J”,名称=“Utilisateurs du journal de performance“
在此输出中,只有组名Name="Utilisateurs du journal de performances"
对我很重要。
是一种做wmi查询的方法,只返回这个元素在这个_object
?
另一个foreach
与_object
也许。
答
从wmi中获取我的对象后,我找到一个使用substring
的肮脏方法。
foreach (ManagementObject _object in _class.GetInstances())
{
string groups = _object["GroupComponent"].ToString();
int i = groups.LastIndexOf('=') + 1;
string groupsName = groups.Substring(i);
richTextBox1.AppendText(groupsName + "\r\n\r\n");
}