IDirectorySearch ::GetFirstRow, méthode (iads.h)
La méthode GetFirstRow obtient la première ligne d’un résultat de recherche. Cette méthode émet ou réédite une nouvelle recherche, même si cette méthode a déjà été appelée.
Syntaxe
HRESULT GetFirstRow(
[in] ADS_SEARCH_HANDLE hSearchResult
);
Paramètres
[in] hSearchResult
Contient le handle de recherche obtenu en appelant IDirectorySearch ::ExecuteSearch.
Valeur retournée
Cette méthode retourne les valeurs de retour standard, ainsi que les éléments suivants :
Pour plus d’informations, consultez Codes d’erreur ADSI.
Remarques
Lorsque l’indicateur ADS_SEARCHPREF_CACHE_RESULTS n’est pas défini, c’est-à-dire FALSE, seul le défilement vers l’avant est autorisé, car le client peut ne pas mettre en cache tous les résultats de la requête. L’appel de GetFirstRow plusieurs fois à partir de la même ligne nécessite un défilement arrière et peut entraîner des résultats erronés pour une recherche paginée ou asynchrone lancée via OLE DB lorsque les résultats ne sont pas garantis de rester dans le cache.
Exemples
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);
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | iads.h |
DLL | Activeds.dll ; Adsldp.dll ; Adsldpc.dll |