Compartilhar via


Método CVssWriter::OnPreRestore (vswriter.h)

O método OnPreRestore é chamado por um gravador após um evento PreRestore . Esse método é usado para colocar o gravador em um estado para dar suporte à restauração, por exemplo, colocar os serviços de banco de dados offline, e fazer modificações no Documento de Componentes de Backup do solicitante que está restaurando arquivos (como definir o destino de restauração para substituir o método de restauração original).

OnPreRestore é um método virtual. Ele é implementado pela classe base CVssWriter , mas pode ser substituído por classes derivadas.

Sintaxe

bool OnPreRestore(
  [in] IVssWriterComponents *pComponent
);

Parâmetros

[in] pComponent

Ponteiro para uma instanciação de um objeto IVssWriterComponents que contém os componentes associados ao gravador atual no Documento de Componentes de Backup do solicitante.

Retornar valor

Conforme implementado pela classe base, OnPreRestore sempre retorna true.

Qualquer outra implementação desse método deve retornar true , exceto no caso de um erro fatal. Se ocorrer um erro fatal, o método deverá chamar o método CVssWriter::SetWriterFailure para fornecer uma descrição da falha antes de retornar false. Se ocorrer um erro não fatal, o método ainda deverá chamar SetWriterFailure , mas retornar true. Se o erro for causado por um problema transitório, o método deverá especificar VSS_E_WRITERERROR_RETRYABLE na chamada para SetWriterFailure.

Em todos os casos em que ocorre uma falha, o método deve gravar um evento no log de eventos para relatar o motivo exato da falha.

Comentários

O evento PreRestore ocorre antes que os dados de backup sejam realmente restaurados. Essa é uma oportunidade para o gravador determinar o que está sendo restaurado.

A implementação padrão desse método pela classe base CVssWriter retorna true sem executar nenhuma outra operação.

Esse método permite que o gravador determine o que está sendo restaurado, recupere metadados privados armazenados no Documento de Componentes de Backup armazenado e atualize esses dados.

Os gravadores nunca devem lançar uma exceção desse método ou de qualquer outro método de retorno de chamada CVssWriter(Ex)::OnXxx .

Se esse método chamar o método CVssWriterEx2::GetSessionId, CVssWriter::SetWriterFailure ou CVssWriterEx2::SetWriterFailureEx , ele deverá fazer isso no mesmo thread que chamou esse método. Para obter mais informações, consulte Tratamento de eventos do gravador.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vswriter.h (inclua Vss.h, VsWriter.h)
Biblioteca VssApi.lib

Confira também

CVssWriter

CVssWriter::OnPostSnapshot

CVssWriter::OnPrepareBackup

CVssWriter::SetWriterFailure

IVssWriterComponents