Funzione DsRestoreGetDatabaseLocations
[Questa funzione è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. A partire da Windows Vista, usare invece il servizio Copia Shadow del volume (VSS ).
La funzione DsRestoreGetDatabaseLocations ottiene i percorsi in cui copiare i file di backup durante un'operazione di ripristino.
Sintassi
HRESULT DsRestoreGetDatabaseLocations(
_In_ HBC hbc,
_Out_ LPWSTR *pszDatabaseLocationList,
_Out_ LPDWORD pcbSize
);
Parametri
-
hbc [in]
-
Contiene l'handle del contesto di ripristino ottenuto con la funzione DsRestorePrepare .
-
pszDatabaseLocationList [out]
-
Puntatore a un puntatore di stringa che riceve l'elenco di percorsi di database come percorsi UNC. Questo elenco riceve un elenco con terminazione Null doppia di stringhe con terminazione Null singola.
Questo buffer viene allocato dalla funzione DsRestoreGetDatabaseLocations e deve essere liberato quando non è più necessario chiamando la funzione DsBackupFree .
Il primo carattere di ognuno dei nomi di file contiene una delle costanti BFT che identificano il tipo di nome. La funzione DsRestoreGetDatabaseLocations fornisce solo i tipi di nome seguenti.
-
BFT_NTDS_DATABASE
-
Il file di database NTDS deve essere copiato in questo file. Si tratta del file identificato come BFT_NTDS_DATABASE quando è stato eseguito il backup.
-
BFT_LOG_DIR
-
Tutti i file di log vengono copiati in questa directory. I file di log sono stati identificati come BFT_LOG quando è stato eseguito il backup.
-
BFT_CHECKPOINT_DIR
-
Tutti i file patch vengono copiati in questa directory. I file di patch sono stati identificati come BFT_PATCH_FILE quando è stato eseguito il backup.
pcbSize [out]
Puntatore al valore DWORD che riceve le dimensioni, in byte, del buffer pszDatabaseLocationList .
Valore restituito
Restituisce S_OK se la funzione ha esito positivo o un codice di errore Win32 o RPC in caso contrario. Nell'elenco seguente sono elencati i possibili codici di errore.
-
ERROR_ACCESS_DENIED
-
Il chiamante non dispone dei privilegi di accesso appropriati per chiamare questa funzione. La funzione DsSetAuthIdentity può essere usata per impostare le credenziali da usare per le funzioni di backup e ripristino.
-
ERROR_INVALID_PARAMETER
-
hbc, pszDatabaseLocationList o pcbSize non sono validi.
-
ERROR_NOT_ENOUGH_MEMORY
-
Si è verificato un errore di allocazione della memoria.
Commenti
La funzione DsRestoreGetDatabaseLocations può essere usata per ottenere le directory di ripristino senza accedere ai dati di cui è stato eseguito il backup. A tale scopo, chiamare DsRestorePrepare con NULL per il parametro pvExpiryToken . In questo modo DsRestorePrepare restituisce un handle di contesto con restrizioni che può essere usato solo con la funzione DsRestoreGetDatabaseLocations .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |
Intestazione |
|
Libreria |
|
DLL |
|
Nomi Unicode e ANSI |
DsRestoreGetDatabaseLocationsW (Unicode) e DsRestoreGetDatabaseLocationsA (ANSI) |