Partager via


Méthode IVssExamineWriterMetadata ::GetRestoreMethod (vsbackup.h)

La méthode GetRestoreMethod retourne des informations sur la façon dont un writer souhaite que ses données soient restaurées.

Syntaxe

HRESULT GetRestoreMethod(
  [out] VSS_RESTOREMETHOD_ENUM *pMethod,
  [out] BSTR                   *pbstrService,
  [out] BSTR                   *pbstrUserProcedure,
  [out] VSS_WRITERRESTORE_ENUM *pwriterRestore,
  [out] bool                   *pbRebootRequired,
  [out] UINT                   *pcMappings
);

Paramètres

[out] pMethod

Pointeur vers une valeur VSS_RESTOREMETHOD_ENUM qui spécifie le remplacement des fichiers, l’utilisation d’autres emplacements spécifiant la méthode qui sera utilisée dans l’opération de restauration.

[out] pbstrService

Si la valeur de pMethod est VSS_RME_STOP_RESTORE_START ou VSS_RME_RESTORE_STOP_START, pointeur vers une chaîne contenant le nom du service démarré et arrêté. Sinon, la valeur est NULL.

[out] pbstrUserProcedure

Pointeur vers l’URL d’un document HTML ou XML décrivant à l’utilisateur comment la restauration doit être effectuée. La valeur peut être NULL.

[out] pwriterRestore

Pointeur vers une valeur VSS_WRITERRESTORE_ENUM spécifiant si l’enregistreur sera impliqué dans la restauration de ses données.

[out] pbRebootRequired

Pointeur vers une valeur booléenne indiquant si un redémarrage sera nécessaire une fois l’opération de restauration terminée. La valeur reçoit true si un redémarrage est requis, ou false dans le cas contraire.

[out] pcMappings

Pointeur vers le nombre de mappages alternatifs associés au writer.

Valeur retournée

Voici les codes de retour valides pour cette méthode.

Valeur Signification
S_OK
Les informations de la méthode de restauration ont été correctement retournées.
S_FALSE
Il n’existe pas de méthode de restauration.
E_INVALIDARG
L’une des valeurs de paramètre n’est pas valide.
E_OUTOFMEMORY
L’appelant n’a plus de mémoire ou d’autres ressources système.
VSS_E_INVALID_XML_DOCUMENT
Le document XML n’est pas valide. Pour plus d’informations, consultez le journal des événements. Pour plus d’informations, consultez Gestion des événements et des erreurs sous VSS.
VSS_E_UNEXPECTED
Erreur inattendue. Le code d’erreur est enregistré dans le fichier journal des erreurs. Pour plus d’informations, consultez Gestion des événements et des erreurs sous VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cette valeur n’est pas prise en charge tant que Windows Server 2008 R2 et Windows 7. E_UNEXPECTED est utilisé à la place.

Remarques

L’appelant doit libérer la mémoire utilisée par les paramètres pbstrUserProcedure et pbstrService en appelant SysFreeString.

Un fichier doit toujours être restauré dans son autre mappage d’emplacement si l’une des conditions suivantes est vraie :

  • La méthode de restauration (définie au moment de la sauvegarde) est VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
  • Sa cible de restauration a été définie (au moment de la restauration) sur VSS_RT_ALTERNATE.
Dans les deux cas, si aucun autre mappage d’emplacement valide n’est défini, cela constitue une erreur de writer.

Un fichier peut être restauré dans un autre mappage d’emplacement si :

  • La méthode de restauration est VSS_RME_RESTORE_IF_NOT_THERE et une version du fichier est déjà présente sur le disque.
  • La méthode de restauration est VSS_RME_RESTORE_IF_CAN_REPLACE et une version du fichier est présente sur le disque et ne peut pas être remplacée.
Là encore, si aucun mappage d’emplacement alternatif valide n’est défini, cela constitue une erreur de writer.

Un autre mappage d’emplacement est utilisé uniquement pendant une opération de restauration et ne doit pas être confondu avec un autre chemin, qui est utilisé uniquement pendant une opération de sauvegarde.

Pour plus d’informations sur les méthodes de restauration, consultez Définition des méthodes de restauration VSS.

Si la méthode de restauration est VSS_RME_STOP_RESTORE_START ou VSS_RME_RESTORE_STOP_START, un demandeur utilise le nom retourné par pbstrService pour déterminer quel service doit être arrêté pendant, puis redémarré après la restauration. Pour plus d’informations sur la participation de l’enregistreur à l’arrêt et au redémarrage des services pendant une opération de restauration, consultez Arrêt des services pour la restauration par les demandeurs .

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 vsbackup.h (inclure VsBackup.h, Vss.h, VsWriter.h)
Bibliothèque VssApi.lib

Voir aussi

IVssCreateWriterMetadata ::SetRestoreMethod

IVssExamineWriterMetadata