Funzione DsBackupPrepare
[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 DsBackupPrepare prepara la directory nel server specificato per il backup online e restituisce un handle di contesto di backup usato nelle chiamate successive ad altre funzioni di backup.
Sintassi
HRESULT DsBackupPrepare(
_In_ LPCTSTR szBackupServer,
_In_ ULONG grbit,
_In_ ULONG btBackupType,
_Out_ PVOID *ppvExpiryToken,
_Out_ LPDWORD pcbExpiryTokenSize,
_Out_ HBC *phbc
);
Parametri
-
szBackupServer [in]
-
Puntatore a una stringa con terminazione null contenente il nome del server da eseguire per il backup. Le barre rovesciata precedenti sono facoltative. Il server deve essere lo stesso computer da cui viene chiamata questa funzione. Il nome del server non può contenere un carattere di sottolineatura (_). Un esempio di nome server è "\\server1".
-
grbit [in]
-
Determina se i file di log verranno sottoposti a backup. Questo valore deve essere sempre 0 perché i backup incrementali non sono supportati.
-
btBackupType [in]
-
Specifica il tipo di backup. Questo può essere uno dei valori seguenti.
-
BACKUP_TYPE_FULL
-
Specifica un backup completo. La directory completa (DIT, file di log e file di aggiornamento) viene eseguito il backup. Tutti i dati vengono sottoposti a backup e i file di log delle transazioni vengono troncati. Sono supportati solo i backup completi.
-
BACKUP_TYPE_LOGS_ONLY
-
Questo valore non è supportato. Specifica che verranno sottoposti a backup solo i log del database e non il database stesso. Questa operazione viene in genere usata durante l'esecuzione di un backup differenziale o incrementale.
-
BACKUP_TYPE_INCREMENTAL
-
Questo valore non è supportato. DsBackupPrepare restituisceERROR_INVALID_PARAMETER.
ppvExpiryToken [out]
Puntatore a un valore PVOID che riceve un puntatore a un token di scadenza associato a questo backup. pcbExpiryTokenSize riceve le dimensioni, in byte, di questi dati. Il chiamante deve salvare il contenuto di questo token con il backup perché il token deve essere passato a DsRestorePrepare quando si tenta di ripristinare i dati. Dopo aver archiviato il token e non è più necessario, il chiamante deve liberare la memoria allocata usando DsBackupFree.
pcbExpiryTokenSize [out]
Puntatore a un valore DWORD che riceve le dimensioni, in byte, del token in ppvExpiryToken.
phbc [out]
Puntatore a un valore HBC che riceve l'handle per il backup. Questo handle viene usato quando si chiamano altre funzioni di backup del servizio directory, ad esempio DsBackupOpenFile e DsBackupEnd.
Valore restituito
Restituisce S_OK se la funzione ha esito positivo o un codice di errore in caso contrario. Nell'elenco seguente sono elencati altri codici di errore possibili.
-
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
-
szBackupServer o phbcBackupContext non sono validi.
-
ERROR_NOT_ENOUGH_MEMORY
-
Si è verificato un errore di allocazione della memoria.
-
hrCouldNotConnect
-
Impossibile trovare il server in szBackupServer , non è un controller di dominio o szBackupServer non è formattato correttamente. Questo valore è definito in ntdsbmsg.h.
-
hrInvalidParam
-
ppvExpiryToken e/o pcbExpiryTokenSize non sono validi. Questo valore è definito in Ntdsbmsg.h.
-
RPC_S_INVALID_BINDING
-
La funzione viene chiamata in remoto o il server in szServerName non è un controller di dominio.
Commenti
Questa funzione richiede che il chiamante disponga del privilegio SE_BACKUP_NAME . La funzione DsSetAuthIdentity può essere usata per modificare il contesto di sicurezza in cui viene chiamata questa funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |
Intestazione |
|
Libreria |
|
DLL |
|
Nomi Unicode e ANSI |
DsBackupPrepareW (Unicode) e DsBackupPrepareA (ANSI) |