Partager via


Méthode CVssWriter ::OnPrepareSnapshot (vswriter.h)

La méthode OnPrepareSnapshot est appelée par un writer pour gérer un événement PrepareForSnapshot . Il est utilisé pour effectuer les opérations nécessaires à la préparation d’un enregistreur à participer au cliché instantané ou à opposer son veto à un cliché instantané.

OnPrepareSnapshot est une méthode virtuelle pure. Elle n’est pas implémentée par la classe de base CVssWriter et doit être implémentée par des classes dérivées.

Syntaxe

bool OnPrepareSnapshot();

Valeur de retour

L’implémentation de cette méthode doit retourner true , sauf en cas d’erreur irrécupérable. Si une erreur irrécupérable se produit, la méthode doit appeler la méthode CVssWriter ::SetWriterFailure pour fournir une description de l’échec avant de retourner false. Si une erreur non irrécupérable se produit, la méthode doit toujours appeler SetWriterFailure , mais retourner true. Si l’erreur est due à un problème temporaire, la méthode doit spécifier VSS_E_WRITERERROR_RETRYABLE dans l’appel à SetWriterFailure.

Dans tous les cas où une défaillance se produit, la méthode doit écrire un événement dans le journal des événements pour signaler la raison exacte de l’échec.

Remarques

La méthode OnPrepareSnapshot effectue des opérations qui sont requises avant tout blocage de cliché instantané.

La fenêtre de délai d’attente pour la gestion d’un événement PrepareForSnapshot est généralement plus longue que celle de la gestion d’un événement Freeze . Par conséquent, les développeurs peuvent utiliser OnPrepareSnapshot pour gérer des opérations plus longues. Une utilisation classique peut être pour l’enregistreur de contrôler explicitement ses données.

Les enregistreurs ne doivent jamais lever d’exception de cette méthode ou de toute autre méthode de rappel CVssWriter(Ex) ::OnXxx .

Si cette méthode appelle la méthode CVssWriterEx2 ::GetSessionId, CVssWriter ::SetWriterFailure ou CVssWriterEx2 ::SetWriterFailureEx , elle doit le faire dans le même thread qui a appelé cette méthode. Pour plus d’informations, consultez Gestion des événements writer.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête vswriter.h (inclure Vss.h, VsWriter.h)
Bibliothèque VssApi.lib

Voir aussi

CVssWriter

CVssWriter ::OnAbort

CVssWriter ::OnFreeze

CVssWriter ::OnThaw

CVssWriter ::SetWriterFailure