Função DsRestoreGetDatabaseLocations
[Essa função está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. A partir do Windows Vista, use o VSS (Serviço de Cópias de Sombra de Volume ).
A função DsRestoreGetDatabaseLocations obtém os locais em que os arquivos de backup devem ser copiados durante uma operação de restauração.
Sintaxe
HRESULT DsRestoreGetDatabaseLocations(
_In_ HBC hbc,
_Out_ LPWSTR *pszDatabaseLocationList,
_Out_ LPDWORD pcbSize
);
Parâmetros
-
hbc [in]
-
Contém o identificador de contexto de restauração obtido com a função DsRestorePrepare .
-
pszDatabaseLocationList [out]
-
Ponteiro para um ponteiro de cadeia de caracteres que recebe a lista de locais de banco de dados como caminhos UNC. Essa lista recebe uma lista dupla terminada em nulo de cadeias de caracteres terminadas em nulo único.
Esse buffer é alocado pela função DsRestoreGetDatabaseLocations e deve ser liberado quando não for mais necessário chamando a função DsBackupFree .
O primeiro caractere de cada um dos nomes de arquivo contém uma das Constantes BFT que identifica o tipo de nome. A função DsRestoreGetDatabaseLocations fornece apenas os tipos de nome a seguir.
-
BFT_NTDS_DATABASE
-
O arquivo de banco de dados NTDS deve ser copiado para esse arquivo. Esse é o arquivo que foi identificado como BFT_NTDS_DATABASE quando o backup foi executado.
-
BFT_LOG_DIR
-
Todos os arquivos de log são copiados para esse diretório. Os arquivos de log foram identificados como BFT_LOG quando o backup foi executado.
-
BFT_CHECKPOINT_DIR
-
Todos os arquivos de patch são copiados para esse diretório. Os arquivos de patch foram identificados como BFT_PATCH_FILE quando o backup foi executado.
pcbSize [out]
Ponteiro para o valor DWORD que recebe o tamanho, em bytes, do buffer pszDatabaseLocationList .
Valor retornado
Retorna S_OK se a função for bem-sucedida ou um código de erro Win32 ou RPC caso contrário. A lista a seguir lista os possíveis códigos de erro.
-
ERROR_ACCESS_DENIED
-
O chamador não tem os privilégios de acesso adequados para chamar essa função. A função DsSetAuthIdentity pode ser usada para definir as credenciais a serem usadas para as funções de backup e restauração.
-
ERROR_INVALID_PARAMETER
-
hbc, pszDatabaseLocationList ou pcbSize são inválidos.
-
ERROR_NOT_ENOUGH_MEMORY
-
Ocorreu uma falha de alocação de memória.
Comentários
A função DsRestoreGetDatabaseLocations pode ser usada para obter os diretórios de restauração sem acesso aos dados de backup. Para fazer isso, chame DsRestorePrepare com NULL para o parâmetro pvExpiryToken . Isso faz com que DsRestorePrepare retorne um identificador de contexto restrito que só pode ser usado com a função DsRestoreGetDatabaseLocations .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista |
Servidor mínimo com suporte |
Windows Server 2008 |
Cabeçalho |
|
Biblioteca |
|
DLL |
|
Nomes Unicode e ANSI |
DsRestoreGetDatabaseLocationsW (Unicode) e DsRestoreGetDatabaseLocationsA (ANSI) |