Méthode IVssBackupComponentsEx3 ::GetWriterStatusEx (vsbackup.h)
Retourne des informations status étendues pour l’enregistreur spécifié.
Syntaxe
HRESULT GetWriterStatusEx(
[in] UINT iWriter,
[out] VSS_ID *pidInstance,
[out] VSS_ID *pidWriter,
[out] BSTR *pbstrWriter,
[out] VSS_WRITER_STATE *pnStatus,
[out] HRESULT *phrFailureWriter,
[out, optional] HRESULT *phrApplication,
[out, optional] BSTR *pbstrApplicationMessage
);
Paramètres
[in] iWriter
Index de l’enregistreur dont les métadonnées doivent être récupérées. La valeur de ce paramètre est un entier compris entre 0 et n–1 inclus, où n est le nombre total d’enregistreurs sur le système actuel. La valeur n est retournée par la méthode IVssBackupComponents ::GetWriterStatusCount .
[out] pidInstance
Adresse d’une variable allouée par l’appelant qui reçoit l’identificateur instance de l’enregistreur. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
[out] pidWriter
Adresse d’une variable allouée par l’appelant qui reçoit l’identificateur de la classe writer. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
[out] pbstrWriter
Adresse d’une variable allouée à l’appelant qui reçoit une chaîne contenant le nom de l’enregistreur spécifié. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
[out] pnStatus
Adresse d’une variable allouée par l’appelant qui reçoit une valeur d’énumération VSS_WRITER_STATE . Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.
[out] phrFailureWriter
Adresse d’une variable allouée à l’appelant qui reçoit le code d’échec HRESULT que l’enregistreur a retourné pour le paramètre hrWriter de la méthode CVssWriterEx2 ::SetWriterFailureEx .
Voici les valeurs prises en charge.
Valeur | Signification |
---|---|
|
L’auteur a réussi. |
|
Le cliché instantané contient uniquement un sous-ensemble des volumes nécessaires à l’enregistreur pour sauvegarder correctement le composant d’application. |
|
L’enregistreur a manqué de mémoire ou d’autres ressources système. La méthode recommandée pour gérer ce code d’erreur consiste à attendre dix minutes, puis à répéter l’opération, jusqu’à trois fois. |
|
L’opération d’écriture a échoué en raison d’un délai d’attente entre les événements Freeze et Dégel. La méthode recommandée pour gérer ce code d’erreur consiste à attendre dix minutes, puis à répéter l’opération, jusqu’à trois fois. |
|
L’enregistreur a échoué en raison d’une erreur qui ne se produirait probablement pas si l’ensemble du processus de sauvegarde, de restauration ou de création de cliché instantané était redémarré. La méthode recommandée pour gérer ce code d’erreur consiste à attendre dix minutes, puis à répéter l’opération, jusqu’à trois fois. |
|
L’opération d’écriture a échoué en raison d’une erreur qui peut se produire si un autre cliché instantané est créé. Pour plus d’informations, consultez Gestion des événements et des erreurs sous VSS. |
|
L’auteur ne répond pas. |
|
Le status d’écriture n’est pas disponible pour un ou plusieurs rédacteurs. Un enregistreur peut avoir atteint le nombre maximal de sessions de sauvegarde et de restauration disponibles. |
|
L’enregistreur signale une ou plusieurs erreurs au niveau du composant. Pour récupérer les erreurs, le demandeur doit utiliser la méthode IVssComponentEx2 ::GetFailure . |
[out, optional] phrApplication
Adresse d’une variable allouée à l’appelant qui reçoit le code de retour que l’enregistreur a transmis pour le paramètre hrApplication de la méthode CVssWriterEx2 ::SetWriterFailureEx . Ce paramètre est facultatif et peut être NULL.
[out, optional] pbstrApplicationMessage
Adresse d’une variable qui reçoit le message d’échec de l’application que l’enregistreur a passé pour le paramètre wszApplicationMessage de la méthode SetWriterFailureEx . Ce paramètre est facultatif et peut être NULL.
Valeur retournée
Voici les codes de retour valides pour cette méthode.
Valeur | Signification |
---|---|
|
La status de l’enregistreur spécifié a été retournée. Notez que la valeur du paramètre phrFailureWriter doit être vérifiée pour vérifier que l’enregistreur a réussi. Les codes d’échec de l’enregistreur peuvent figurer parmi ceux répertoriés dans VsWriter.h et dans Les erreurs d’écriture et les vétos. |
|
Le paramètre pnStatus, pidWriter, pbstrWriter ou pidInstance est NULL. |
|
L’appelant n’a pas de mémoire ou d’autres ressources système. |
|
L’objet de composants de sauvegarde n’est pas initialisé, cette méthode a été appelée lors d’une opération de restauration ou cette méthode n’a pas été appelée dans la séquence correcte. |
|
Le paramètre iWriter spécifie un enregistreur qui n’existe pas. |
Remarques
Un demandeur doit appeler l’opération asynchrone IVssBackupComponents ::GatherWriterStatus et attendre qu’elle se termine avant d’appeler IVssBackupComponentsEx3 ::GetWriterStatusEx.
Si cette méthode retourne VSS_E_WRITERERROR_PARTIAL_FAILURE, le demandeur doit utiliser la méthode IVssComponentEx2 ::GetFailure pour récupérer les erreurs au niveau du composant.
Lorsque l’appelant a terminé d’accéder aux informations status retournées par cette méthode, il doit appeler SysFreeString pour libérer la mémoire détenue par les paramètres pbstrWriter et pbstrApplicationMessage.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | vsbackup.h (inclure VsBackup.h, Vss.h, VsWriter.h) |
Voir aussi
CVssWriterEx2 ::SetWriterFailureEx