Condividi tramite


Metodo CVssWriter::OnPrepareBackup (vswriter.h)

Il metodo OnPrepareBackup viene chiamato da un writer che segue un evento PrepareForBackup . Questo metodo viene usato per configurare lo stato di un writer e i relativi componenti in preparazione per un'operazione di backup.

OnPrepareBackup è un metodo virtuale. Viene implementato dalla classe di base CVssWriter , ma può essere sottoposto a override da classi derivate.

Sintassi

bool OnPrepareBackup(
  [in] IVssWriterComponents *pComponent
);

Parametri

[in] pComponent

Puntatore a un'istanza di un oggetto IVssWriterComponents contenente il contenuto del documento metadati writer. Il valore di questo parametro può essere NULL se il richiedente non supporta i componenti (se CVssWriter::AreComponentsSelected restituisce false).

Valore restituito

Come implementato dalla classe base, OnPrepareBackup restituisce sempre true.

Qualsiasi altra implementazione di questo metodo deve restituire true tranne nel caso di un errore irreversibile. Se si verifica un errore irreversibile, il metodo deve chiamare il metodo CVssWriter::SetWriterFailure per fornire una descrizione dell'errore prima di restituire false. Se si verifica un errore non irreversibile, il metodo deve comunque chiamare SetWriterFailure ma restituire true. Se l'errore è causato da un problema temporaneo, il metodo deve specificare VSS_E_WRITERERROR_RETRYABLE nella chiamata a SetWriterFailure.

In tutti i casi in cui si verifica un errore, il metodo deve scrivere un evento nel registro eventi per segnalare il motivo esatto dell'errore.

Commenti

L'implementazione predefinita di questo metodo da parte della classe di base CVssWriter restituisce true senza eseguire alcuna altra operazione.

OnPrepareBackup offre un'opportunità di scrittura per selezionare in modo più corretto gli elementi di cui verrà eseguito il backup.

La gestione dell'evento PrepareForBackup è l'ultima opportunità per un writer di ottenere l'accesso ai metadati contenuti nel documento Componenti di backup prima della creazione della copia shadow.

Pertanto, OnPrepareBackup offre un'opportunità per il writer di apportare eventuali aggiunte o aggiornamenti finali alle informazioni del componente archiviate (usando l'interfaccia IVssComponent ). In particolare, i metadati specifici del writer possono essere aggiornati da IVssComponent::SetBackupMetadata o IVssComponent::SetRestoreMetadata.

Inoltre, durante la gestione dell'evento PrepareForSnapshot offre un'altra opportunità nel ciclo di vita di un'operazione di backup di VSS per eseguire operazioni che richiedono tempo ,ad esempio la sincronizzazione dei dati in più siti, OnPrepareBackup offre la possibilità di avviare tale operazione in modo asincrono. Le attività come queste devono essere completate prima della restituzione di CVssWriter::OnPrepareSnapshot.

I writer non devono mai generare un'eccezione da questo metodo o da qualsiasi altro metodo CVssWriter(Ex)::OnXxx callback.

Un richiedente genera un evento PrepareForBackup , attivando una chiamata a OnPrepareBackup chiamando IVssBackupComponents::P repareForBackup.

Se questo metodo chiama il metodo CVssWriterEx2::GetSessionId, CVssWriter::SetWriterFailure o CVssWriterEx2::SetWriterFailureEx , deve farlo nello stesso thread denominato questo metodo. Per altre informazioni, vedere Gestione eventi writer.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vswriter.h (include Vss.h, VsWriter.h)
Libreria VssApi.lib

Vedi anche

CVssWriter

CVssWriter::OnPostSnapshot

CVssWriter::OnPreRestore

CVssWriter::SetWriterFailure

IVssWriterComponents