Share via


검색 결과 처리

IDirectorySearch::GetFirstRow 또는 IDirectorySearch::GetNextRow에 대한 첫 번째 호출 후 S_OK, S_ADS_NOMORE_ROWS 또는 오류 결과가 반환됩니다.

반환 값이 S_ADS_NOMORE_ROWS 필터와 일치하는 개체를 더 이상 찾을 수 없습니다. 오류 결과가 반환되면 쿼리가 실패합니다. 두 경우 모두 아무 것도 반환되지 않았기 때문에 결과의 행을 처리할 필요가 없습니다.

S_OK 반환되면 행이 검색됩니다. IDirectorySearch::GetColumn을 사용하여 이름으로 열을 구문 분석할 수 있습니다. 이름은 열에 있는 특성의 lDAPDisplayName 입니다. 모든 열 집합은 IDirectorySearch::ExecuteSearch 메서드의 pAttributeNames 매개 변수에 의해 정의되었습니다. NULL을 지정한 경우 모든 열 집합은 반환된 모든 개체에 대해 찾은 모든 속성의 합니언입니다. 개체에 대해 반환된 전체 열 집합을 읽으려면 IDirectorySearch::GetNextColumnName 을 사용하여 각 열을 반복하고 반환된 열 이름을 사용하여 IDirectorySearch::GetColumn을 호출합니다.

IDirectorySearch::GetColumn 메서드는 특성 이름, 특성 형식, 값 개수 및 값을 포함하는 ADSVALUE구조체 배열에 대한 포인터를 포함하는 ADS_SEARCH_COLUMN 구조를 반환합니다. ADSVALUE 구조를 반복하여 열에서 반환된 속성의 값을 읽을 수 있습니다. ADS_SEARCH_COLUMN 구조체의 dwADsType 멤버(또는 ADSVALUE 구조체의 dwType 멤버)가 지정한 ADSTYPE을 기반으로 ADSVALUE 구조체의 적절한 멤버를 읽어야 합니다. 예를 들어 dwADsTypeADSTYPE_INTEGER 경우 각 ADSVALUE 구조체의 Integer 멤버를 읽습니다.

자세한 내용과 코드 예제는 사용자 검색을 위한 예제 코드를 참조하세요.