IADsPropertyList::Next 方法 (iads.h)
IADsPropertyList::Next 方法获取属性列表中的下一项。 返回的项是 Property Entry 对象。
语法
HRESULT Next(
[out] VARIANT *pVariant
);
parameters
[out] pVariant
调用方分配的变量的地址,该变量包含属性列表中下一项的值。 VT_DISPATCH 的返回值是指指向实现 IADsPropertyEntry 接口的对象的 IDispatch 接口指针。
返回值
此方法支持标准 HRESULT 值,包括获取项时 S_OK 。 返回列表中的最后一项时,返回的返回值将因所使用的提供程序而异。 以下代码用于指示已获取列表中的最后一项:
有关详细信息和其他返回值,请参阅 ADSI 错误代码。
注解
当不再需要 Next 方法返回的值时,必须使用 VariantClear 清除 pVariant。
示例
下面的代码示例演示如何使用 Next 方法遍历属性列表。
Dim propList As IADsPropertyList
Dim v as Variant
Dim propVal As IADsPropertyValue
On Error Resume Next
Set propList = GetObject("LDAP://dc01/DC=Fabrikam,DC=com")
propList.GetInfo
Set v = propList.Next()
While (Not (IsNull(v)) And Err.Number = 0)
Set propEnty = v
Debug.Print v.Name
Debug.Print v.AdsType
Set v = propList.Next
Wend
以下 C++ 代码示例演示如何使用 IADsPropertyList::Next 方法。
////////////////////////////////////
// Function used to retrieve an entry using the
// IADsPropertyList::Next method.
// name: GetNextEntry
// input: IADsPropertyList*
// return: IADsPropertyEntry
// uses: IADsPropertyList::Next
/////////////////////////////////////////////////////////
IADsPropertyEntry* GetNextEntry(IADsPropertyList* pList)
{
VARIANT var;
VariantInit(&var);
IADsPropertyEntry *pEntry;
if(!pList)
{
_tprintf("An error has occurred.");
return NULL;
}
HRESULT hr = pList->Next(&var);
hr = V_DISPATCH(&var)->QueryInterface(IID_IADsPropertyEntry,
(void**)&pEntry);
VariantClear(&var);
return pEntry;
}
要求
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | iads.h |
DLL | Activeds.dll |