共用方式為


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

azureSize [out]

接收pszDatabaseLocationList緩衝區大小的DWORD值指標,以位元組為單位。

傳回值

如果函式成功或 Win32 或 RPC 錯誤碼,則傳回 S_OK 。 下列清單列出可能的錯誤碼。

ERROR_ACCESS_DENIED

呼叫端沒有適當的存取權限可呼叫此函式。 DsSetAuthIdentity函式可用來設定用於備份和還原函式的認證。

ERROR_INVALID_PARAMETER

hbcpszDatabaseLocationListsqlSize 無效。

ERROR_NOT_ENOUGH_MEMORY

發生記憶體配置失敗。

備註

DsRestoreGetDatabaseLocations函式可用來取得還原目錄,而不需要存取備份的資料。 若要這樣做,請使用pvExpiryToken參數的Null呼叫DsRestorePrepare。 這會導致 DsRestorePrepare 傳回限制的內容控制碼,只能與 DsRestoreGetDatabaseLocations 函式搭配使用。

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
標頭
Ntdsbcli.h
程式庫
Ntdsbcli.lib
DLL
Ntdsbcli.dll
Unicode 與 ANSI 名稱
DsRestoreGetDatabaseLocationsW (Unicode) 和 DsRestoreGetDatabaseLocationsA (ANSI)

另請參閱

DsRestorePrepare

DsBackupFree

目錄備份函式

還原 Active Directory