IADsGroup::Members 方法 (iads.h)

IADsGroup::Members 方法检索组的直接成员的集合。 集合不包括嵌套在组中的其他组的成员。

此方法的默认实现使用 LsaLookupSids 查询组成员的名称信息。 LsaLookupSids 的最大限制为可转换的 20480 SID,因此该限制也适用于此方法。

语法

HRESULT Members(
  [out] IADsMembers **ppMembers
);

参数

[out] ppMembers

指向接收组成员集合的 IADsMembers 接口指针的指针。 当不再需要此接口时,调用方必须释放该接口。

返回值

此方法支持标准返回值,包括 S_OK。 有关详细信息和其他返回值,请参阅 ADSI 错误代码

注解

IADsMembersMembers 方法将使用相同的提供程序。

示例

下面的代码示例枚举组的所有成员。

Dim grp As IADsGroup
Dim memberList As IADsMembers
Dim member As IADs

On Error GoTo Cleanup
 
Set grp = GetObject("WinNT://Microsoft/Administrators")
Set memberList = grp.Members
For Each m In memberList
    Set member = m
    Debug.Print member.Name & "(" & member.Class & ")"
Next

Cleanup:
    If (Err.Number<>0) Then
        MsgBox("An error has occurred. " & Err.Number)
    End If
    Set grp = Nothing
    Set member = Nothing
    Set memberList = Nothing

下面的代码示例枚举组的所有成员。

HRESULT EnumerateGroupMembers(IADsGroup *pGroup)
{
    IADsMembers *pMembers;
    HRESULT hr = S_OK;
    hr = pGroup->Members(&pMembers);
    if(FAILED(hr)){goto Cleanup;}
 
    hr = EnumMembers(pMembers);  // For more information and a code
                                    example, see IADsMembers::get__NewEnum.
    if(FAILED(hr)){goto Cleanup;}

Cleanup:
    if(pMembers)
        pMembers->Release();

    return hr;
}

要求

要求
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 iads.h
DLL Activeds.dll

另请参阅

ADSI 错误代码

IADsGroup

IADsGroup 属性方法

IADsMembers