IDirectorySearch::ExecuteSearch 메서드(iads.h)

IDirectorySearch::ExecuteSearch 메서드는 검색을 실행하고 결과를 호출자에게 전달합니다. LDAP와 같은 일부 공급자는 호출자가 IDirectorySearch::GetFirstRow 메서드 또는 IDirectorySearch::GetNextRow 메서드를 호출할 때까지 실제 실행을 연기합니다.

구문

HRESULT ExecuteSearch(
  [in]  LPWSTR             pszSearchFilter,
  [in]  LPWSTR             *pAttributeNames,
  [in]  DWORD              dwNumberAttributes,
  [out] PADS_SEARCH_HANDLE phSearchResult
);

매개 변수

[in] pszSearchFilter

"(objectClass=user)"와 같은 LDAP 형식의 검색 필터 문자열입니다.

[in] pAttributeNames

데이터가 요청되는 특성 이름의 배열입니다. NULL인 경우 dwNumberAttributes는 0이거나 0xFFFFFFFF 합니다.

[in] dwNumberAttributes

pAttributeNames 배열의 크기입니다. 0xFFFFFFFF 특수 값은 pAttributeNames 가 무시되고 NULL일 수 있음을 나타냅니다. 이 특수 값은 설정된 모든 특성이 요청됨을 의미합니다. 이 값이 0이면 pAttributeNames 배열은NULL일 수 있습니다. 특성이 요청되지 않습니다.

[out] phSearchResult

검색 컨텍스트에 메서드 할당 핸들의 주소입니다. 호출자는 이 핸들을 IDirectorySearch 의 다른 메서드에 전달하여 검색 결과를 검사합니다. NULL인 경우 검색을 실행할 수 없습니다.

반환 값

이 메서드는 표준 반환 값과 다음을 반환합니다.

자세한 내용 및 기타 반환 값은 ADSI 오류 코드를 참조하세요.

설명

검색 필터(pszSearchFilter)에 ADS_UTC_TIME 형식의 특성이 포함된 경우 값은 각각 "y", "m", "d", "h", "m" 및 "s"가 각각 연도, 월, 일, 시간, 분 및 초를 나타내는 "yymmddhhmmssZ" 형식이어야 합니다. 예를 들어 이 형식에서 "1999년 5월 13 10:20:00"은 "990513102000Z"가 됩니다. 마지막 문자 "Z"는 필수 구문이며 Zulu 시간 또는 유니버설 조정 시간을 나타냅니다.

호출자는 IDirectorySearch::CloseSearchHandle 을 호출하여 검색 핸들 및 결과에 할당된 메모리를 해제해야 합니다.

dwNumberAttributes에 0xFFFFFFFF 특수 값을 사용하는 경우 ADsPath 또는 distinguishedName의 LDAP 검색에는 추가 리소스 또는 시간 비용이 없습니다.

예제

다음 C++ 코드 예제에서는 IDirectorySearch::ExecuteSearch를 호출하는 방법을 보여 줍니다.

LPWSTR pszAttr[] = { L"ADsPath", L"Name", L"samAccountName" };
ADS_SEARCH_HANDLE hSearch;
DWORD dwCount= sizeof(pszAttr)/sizeof(LPWSTR);
 
// Search for users with a last name that begins with "h".
hr = m_pSearch->ExecuteSearch(L"(&(objectClass=user)(sn=h*))", pszAttr, dwCount, &hSearch );

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 iads.h
DLL Activeds.dll; Adsldp.dll; Adsldpc.dll

참고 항목

ADSI 오류 코드

IDirectorySearch

IDirectorySearch::CloseSearchHandle

IDirectorySearch::GetFirstRow

IDirectorySearch::GetNextRow