Condividi tramite


Metodo CVssWriter::OnBackupShutdown (vswriter.h)

Il metodo OnBackupShutdown viene chiamato da un writer che segue un evento BackupShutdown . Viene usato per eseguire operazioni considerate necessarie quando un'applicazione di backup viene arrestata, in particolare in caso di arresto anomalo dell'applicazione di backup.

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

Sintassi

bool OnBackupShutdown(
  [in] VSS_ID SnapshotSetId
);

Parametri

[in] SnapshotSetId

Identificatore del set di copia shadow coinvolto nell'operazione di backup.

Valore restituito

Come implementato dalla classe base, OnBackupShutdown 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 altre operazioni.

Se le operazioni speciali devono essere eseguite dal writer quando un'applicazione di backup viene arrestata, è possibile eseguire l'override dell'implementazione predefinita.

Se non è stata eseguita alcuna copia shadow, il valore dell'identificatore del set di copie shadow (SnapshotSetId) sarà NULL.

Un evento BackupShutdown verrà generato ogni volta che un'applicazione di backup termina effettivamente e viene rilasciato il relativo IVssBackupComponents .

L'evento BackupComplete richiede che l'applicazione di backup completi correttamente il backup o non riesca correttamente; Questo potrebbe non essere il caso se l'applicazione di backup viene terminata dal sistema o terminata manualmente prima del completamento del backup (ad esempio, se l'operazione di backup è bloccata e deve essere arrestata).

Per questo motivo, un evento BackupShutdown è un segnale più affidabile della fine di un'applicazione di backup rispetto all'evento BackupComplete .

Un writer deve mantenere le informazioni sullo stato in modo che possa tenere traccia dell'invio di un evento BackupComplete per un determinato set di copie shadow.

Qualsiasi implementazione specifica del writer di OnBackupShutdown deve verificare se è stato gestito un evento BackupComplete . Deve assicurarsi che tutte le operazioni di pulizia del writer necessarie in seguito a un backup (riuscito o in altro modo) siano preforma.

Gli autori non devono mai generare un'eccezione da questo metodo o da altri CVssWriter(Ex)::OnXxx metodo di callback.

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

Requisiti

   
Client minimo supportato Windows Vista [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::OnBackupComplete

CVssWriter::SetWriterFailure

IVssBackupComponents::BackupComplete