다음을 통해 공유


DsGetDcOpenA 함수(dsgetdc.h)

DsGetDcOpen 함수는 새 도메인 컨트롤러 열거형 작업을 엽니다.

구문

DSGETDCAPI DWORD DsGetDcOpenA(
  [in]           LPCSTR  DnsName,
  [in]           ULONG   OptionFlags,
  [in, optional] LPCSTR  SiteName,
  [in, optional] GUID    *DomainGuid,
  [in, optional] LPCSTR  DnsForestName,
  [in]           ULONG   DcFlags,
  [out]          PHANDLE RetGetDcContext
);

매개 변수

[in] DnsName

도메인 컨트롤러를 열거할 도메인의 DNS(도메인 명명 시스템) 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 매개 변수는 NULL일 수 없습니다.

[in] OptionFlags

함수의 동작을 수정하는 플래그 집합을 포함합니다. 이 값은 0이거나 다음 값 중 하나 이상의 조합일 수 있습니다.

DS_ONLY_DO_SITE_NAME

사이트별 도메인 컨트롤러만 열거됩니다.

DS_NOTIFY_AFTER_SITE_RECORDS

DsGetDcNext 함수는 모든 사이트별 도메인 컨트롤러를 검색한 후 ERROR_FILEMARK_DETECTED 값을 반환합니다. 그런 다음 DsGetDcNext는 첫 번째 그룹에 포함된 사이트별 도메인 컨트롤러를 포함하여 도메인의 모든 도메인 컨트롤러를 포함하는 두 번째 그룹을 열거합니다.

[in, optional] SiteName

클라이언트가 있는 사이트의 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in, optional] DomainGuid

DnsName에서 지정한 도메인의 식별자를 포함하는 GUID 값에 대한 포인터입니다. 이 식별자는 이름이 바뀐 도메인의 대/소문자를 처리하는 데 사용됩니다. 이 값을 지정하고 DnsName 에 지정된 도메인의 이름이 바뀐 경우 이 함수는 지정된 식별자를 포함하는 도메인의 도메인 컨트롤러를 열거하려고 시도합니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in, optional] DnsForestName

DnsName 도메인을 포함하는 포리스트의 이름을 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 이 값은 도메인 이름이 변경된 경우 DomainGuid 와 함께 도메인 컨트롤러를 열거하는 데 사용됩니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in] DcFlags

열거할 도메인 컨트롤러의 유형을 식별하는 플래그 집합을 포함합니다. 이 값은 0이거나 다음 값 중 하나 이상의 조합일 수 있습니다.

DS_FORCE_REDISCOVERY

캐시된 도메인 컨트롤러 데이터를 강제로 무시합니다. 이 플래그를 지정하지 않으면 DsGetDcOpen 은 캐시된 도메인 컨트롤러 데이터에서 도메인 컨트롤러 열거형을 가져옵니다.

DS_GC_SERVER_REQUIRED

열거된 도메인 컨트롤러가 이 도메인을 루트로 사용하는 도메인 포리스트에 대한 글로벌 카탈로그 서버여야 합니다. 이 플래그는 DS_PDC_REQUIRED 플래그와 결합할 수 없습니다.

DS_KDC_REQUIRED

열거된 도메인 컨트롤러가 현재 Kerberos 키 배포 센터 서비스를 실행하고 있어야 합니다. 이 플래그는 DS_PDC_REQUIRED 또는 DS_GC_SERVER_REQUIRED 플래그와 결합할 수 없습니다.

DS_ONLY_LDAP_NEEDED

열거된 서버가 LDAP 서버임을 지정합니다. 서버가 반드시 도메인 컨트롤러는 아닙니다. 다른 서비스는 각 열거형 서버에 존재하도록 암시되지 않습니다. 서버에 반드시 쓰기 가능한 구성 컨테이너나 쓰기 가능한 스키마 컨테이너가 있는 것은 아닙니다. 서버는 반드시 보안 원칙을 만들거나 수정하는 데 사용되지 않을 수 있습니다. 이 플래그는 DS_GC_SERVER_REQUIRED 플래그와 함께 사용하여 글로벌 카탈로그 서버를 호스트하는 LDAP 서버를 열거할 수 있습니다. 이 경우 열거된 글로벌 카탈로그 서버는 반드시 도메인 컨트롤러가 아니며 다른 서비스는 각 서버에 존재하도록 암시됩니다. 이 플래그를 지정하면 DS_PDC_REQUIRED, DS_TIMESERV_REQUIRED, DS_GOOD_TIMESERV_PREFERRED, DS_DIRECTORY_SERVICES_PREFERED, DS_DIRECTORY_SERVICES_REQUIREDDS_KDC_REQUIRED 플래그가 무시됩니다.

DS_PDC_REQUIRED

열거된 도메인 컨트롤러가 도메인의 기본 도메인 컨트롤러여야 합니다. 이 플래그는 DS_GC_SERVER_REQUIRED 플래그와 결합할 수 없습니다.

[out] RetGetDcContext

도메인 컨트롤러 열거형 컨텍스트 핸들을 수신하는 HANDLE 값에 대한 포인터입니다. 이 핸들은 DsGetDcNext 함수와 함께 도메인 컨트롤러 열거형 작업을 식별하는 데 사용됩니다. 이 핸들은 DsGetDcClose 에 전달되어 도메인 컨트롤러 열거 작업을 닫습니다.

반환 값

성공하면 ERROR_SUCCESS 반환하고, 그렇지 않으면 Win32 또는 RPC 오류를 반환합니다. 가능한 오류 값은 다음과 같습니다.

설명

참고

dsgetdc.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 DsGetDcOpen을 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 dsgetdc.h
라이브러리 Netapi32.lib
DLL Netapi32.dll

추가 정보

디렉터리 서비스 함수

DsGetDcClose

DsGetDcNext

도메인 컨트롤러 열거