我想在我的机器上检索所有本地组(W2k3域中的Vista)。
如果我跑:
using (DirectoryEntry de = new DirectoryEntry("WinNT://" + Environment.MachineName + ",group", null, null, AuthenticationTypes.Secure))
{
}
它会抛出“未知错误”0x80005000,这显然意味着“无效路径”
然而,查询计算机(更改,分组到,计算机)不会引发错误,但它似乎被忽略(它返回所有对象?我还没有完全检查结果)。 ,用户也会引发错误。
所以我的问题是,我是在正确的道路上吗?有没有办法应用过滤器,所以我不检索一切?如果是这样,我在哪里可以找到正确的语法?
答案 0 :(得分:3)
我相信你需要得到这台机器 - 团队就是这样的孩子。
尝试
DirectoryEntry machine = new DirectoryEntry("WinNT://" + Environment.MachineName + ",Computer");
foreach (DirectoryEntry child in machine.Children)
{
if (child.SchemaClassName == "Group")
{
Debug.WriteLine(child.Name);
}
}
随意使用一些LINQ来加强它,但这应该给你基本的想法。