다음을 통해 공유


DsRestoreGetDatabaseLocations 함수

[이 함수는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. Windows Vista부터 VSS(볼륨 섀도 복사본 서비스) 를 대신 사용합니다.]

DsRestoreGetDatabaseLocations 함수는 복원 작업 중에 백업 파일을 복사해야 하는 위치를 가져옵니다.

구문

HRESULT DsRestoreGetDatabaseLocations(
  _In_  HBC     hbc,
  _Out_ LPWSTR  *pszDatabaseLocationList,
  _Out_ LPDWORD pcbSize
);

매개 변수

hbc [in]

DsRestorePrepare 함수를 사용하여 가져온 복원 컨텍스트 핸들을 포함합니다.

pszDatabaseLocationList [out]

데이터베이스 위치 목록을 UNC 경로로 수신하는 문자열 포인터에 대한 포인터입니다. 이 목록은 null로 끝나는 단일 문자열의 이중 null 종료 목록을 받습니다.

이 버퍼는 DsRestoreGetDatabaseLocations 함수에 의해 할당되며 DsBackupFree 함수를 호출하여 더 이상 필요하지 않은 경우 해제해야 합니다.

각 파일 이름의 첫 번째 문자에는 이름 형식을 식별하는 BFT 상수 중 하나가 포함됩니다. DsRestoreGetDatabaseLocations 함수는 다음 이름 형식만 제공합니다.

BFT_NTDS_DATABASE

NTDS 데이터베이스 파일을 이 파일에 복사해야 합니다. 백업이 수행되었을 때 BFT_NTDS_DATABASE 식별된 파일입니다.

BFT_LOG_DIR

모든 로그 파일이 이 디렉터리에 복사됩니다. 로그 파일은 백업이 수행되었을 때 BFT_LOG 식별되었습니다.

BFT_CHECKPOINT_DIR

모든 패치 파일은 이 디렉터리에 복사됩니다. 패치 파일은 백업이 수행되었을 때 BFT_PATCH_FILE 식별되었습니다.

pcbSize [out]

pszDatabaseLocationList 버퍼의 크기(바이트)를 수신하는 DWORD 값에 대한 포인터입니다.

반환 값

함수가 성공하면 S_OK 반환하고, 그렇지 않으면 Win32 또는 RPC 오류 코드를 반환합니다. 다음 목록에는 가능한 오류 코드가 나열되어 있습니다.

ERROR_ACCESS_DENIED

호출자에게 이 함수를 호출할 수 있는 적절한 액세스 권한이 없습니다. DsSetAuthIdentity 함수를 사용하여 백업 및 복원 함수에 사용할 자격 증명을 설정할 수 있습니다.

ERROR_INVALID_PARAMETER

hbc, pszDatabaseLocationList 또는 pcbSize 가 잘못되었습니다.

ERROR_NOT_ENOUGH_MEMORY

메모리 할당 오류가 발생했습니다.

설명

DsRestoreGetDatabaseLocations 함수를 사용하여 백업된 데이터에 액세스하지 않고 복원 디렉터리를 가져올 수 있습니다. 이렇게 하려면 pvExpiryToken 매개 변수에 대해 NULL을 사용하여 DsRestorePrepare를 호출합니다. 이로 인해 DsRestorePrepareDsRestoreGetDatabaseLocations 함수에서만 사용할 수 있는 제한된 컨텍스트 핸들을 반환합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008
헤더
Ntdsbcli.h
라이브러리
Ntdsbcli.lib
DLL
Ntdsbcli.dll
유니코드 및 ANSI 이름
DsRestoreGetDatabaseLocationsW (유니코드) 및 DsRestoreGetDatabaseLocationsA (ANSI)

추가 정보

DsRestorePrepare

DsBackupFree

디렉터리 백업 함수

Active Directory 복원