IDirectorySearch::GetFirstRow 메서드(iads.h)
GetFirstRow 메서드는 검색 결과의 첫 번째 행을 가져옵니다. 이 메서드는 이전에 이 메서드가 호출된 경우에도 새 검색을 실행하거나 다시 실행합니다.
구문
HRESULT GetFirstRow(
[in] ADS_SEARCH_HANDLE hSearchResult
);
매개 변수
[in] hSearchResult
IDirectorySearch::ExecuteSearch를 호출하여 가져온 검색 핸들을 포함합니다.
반환 값
이 메서드는 표준 반환 값과 다음을 반환합니다.
자세한 내용은 ADSI 오류 코드를 참조하세요.
설명
클라이언트가 모든 쿼리 결과를 캐시하지 않을 수 있으므로 ADS_SEARCHPREF_CACHE_RESULTS 플래그가 설정되지 않은 경우 즉, FALSE이고 앞으로 스크롤만 허용됩니다. 동일한 행에서 GetFirstRow 를 두 번 이상 호출하려면 일부 백 스크롤이 필요하며, 결과가 캐시에 유지되도록 보장되지 않는 경우 OLE DB를 통해 시작된 페이징 또는 비동기 검색에 대해 잘못된 결과가 발생할 수 있습니다.
예제
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);
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
지원되는 최소 서버 | Windows Server 2008 |
대상 플랫폼 | Windows |
헤더 | iads.h |
DLL | Activeds.dll; Adsldp.dll; Adsldpc.dll |