IDirectorySearch::GetNextRow-Methode (iads.h)
Die GetNextRow-Methode ruft die nächste Zeile des Suchergebnisses ab. Wenn IDirectorySearch::GetFirstRow nicht aufgerufen wurde, gibt GetNextRow eine neue Suche aus, beginnend mit der ersten Zeile. Andernfalls wechselt diese Methode zur nächsten Zeile.
Syntax
HRESULT GetNextRow(
[in] ADS_SEARCH_HANDLE hSearchResult
);
Parameter
[in] hSearchResult
Enthält das Suchhandle, das durch Aufrufen von IDirectorySearch::ExecuteSearch abgerufen wird.
Rückgabewert
Diese Methode gibt die Standardrückgabewerte sowie folgendes zurück:
Weitere Informationen finden Sie unter ADSI-Fehlercodes.
Hinweise
Wenn das flag ADS_SEARCHPREF_CACHE_RESULTS nicht festgelegt ist, ist nur vorwärts scrollen zulässig, da der Client möglicherweise nicht alle Abfrageergebnisse zwischenspeichert.
Der Verzeichnisanbieter kann die maximale Anzahl von Zeilen einschränken, die in einer Suche verfügbar sind. In einer Windows-Domäne beträgt die maximale Anzahl von Zeilen, die in einer Active Directory-Suche bereitgestellt werden, 1.000 Zeilen. Wenn die Suchergebnisse den Zeilengrenzwert überschreiten, muss eine ausgelagerte Suche ausgeführt werden, um alle Zeilen in der Suche abzurufen. Weitere Informationen zu ausgelagerten Suchvorgängen finden Sie unter Paging mit IDirectorySearch.
Beispiele
hr = m_pSearch->ExecuteSearch(L"(objectCategory=contact)", pszAttr, dwCount, &hSearch);
if(SUCCEEDED(hr))
{
while(SUCCEEDED(hr = m_pSearch->GetNextRow(hSearch)))
{
if(S_OK == hr)
{
// Get the data.
}
else if(S_ADS_NOMORE_ROWS == hr)
{
// Call ADsGetLastError to see if the search is waiting for a response.
DWORD dwError = ERROR_SUCCESS;
WCHAR szError[512];
WCHAR szProvider[512];
ADsGetLastError(&dwError, szError, 512, szProvider, 512);
if(ERROR_MORE_DATA != dwError)
{
break;
}
}
else
{
break;
}
}
m_pSearch->CloseSearchHandle(hSearch);
}
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | iads.h |
DLL | Activeds.dll; Adsldp.dll; Adsldpc.dll |