Partager via


Méthode IVssComponent ::GetAlternateLocationMapping (vswriter.h)

GetAlternateLocationMapping est utilisé pour renvoyer l’emplacement de remplacement d’un jeu de fichiers pour la restauration de fichiers. Cette méthode peut être appelée par un enregistreur ou un demandeur.

Syntaxe

HRESULT GetAlternateLocationMapping(
  [in]  UINT           iMapping,
  [out] IVssWMFiledesc **ppFiledesc
);

Paramètres

[in] iMapping

Index d’un mappage particulier. La valeur de ce paramètre est un entier compris entre 0 et n–1 inclus, où n est le nombre total de mappages d’emplacements alternatifs associés au composant actuel. La valeur n est retournée par IVssComponent ::GetAlternateLocationMappingCount.

[out] ppFiledesc

Pointeur doublement indirect vers un objet IVssWMFiledesc contenant les informations de mappage.

Valeur retournée

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

Valeur Signification
S_OK
La valeur de l’attribut a été retournée.
E_INVALIDARG
L’une des valeurs de paramètre n’est pas valide.
E_OUTOFMEMORY
L’appelant n’a pas de mémoire ou d’autres ressources système.
VSS_E_INVALID_XML_DOCUMENT
Le document XML n’est pas valide. Consultez le journal des événements pour plus d’informations. Pour plus d’informations, consultez Gestion des événements et des erreurs sous VSS.
VSS_E_OBJECT_NOT_FOUND
L’élément spécifié est introuvable.

Remarques

Les mappages d’emplacements alternatifs retournés par GetAlternateLocationMapping peuvent provenir non seulement des fichiers du composant actuel, mais également des fichiers de l’un de ses sous-composants non sélectionnables.

La valeur retournée par IVssComponent ::GetAlternateLocationMapping ne doit pas non plus être confondue avec celle retournée par IVssExamineWriterMetadata ::GetAlternateLocationMapping :

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, l’absence de mappage d’emplacement de remplacement défini constitue une erreur de rédacteur.

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

  • 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.
Un mappage d’emplacement de remplacement 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.

Le mappage retourné par GetAlternateLocationMapping fait référence aux mappages d’emplacements alternatifs utilisés dans le cadre de la restauration des fichiers.

Les mappages d’emplacements de remplacement sont ajoutés à un objet IVssComponent par IVssBackupComponents ::AddAlternativeLocationMapping.

L’appelant doit appeler IUnknown ::Release pour libérer les ressources système détenues par le paramètre ppMapping lorsqu’il a terminé avec l’objet IVssWMFiledesc vers lequel il pointe.

Pour plus d’informations sur les emplacements de fichiers de sauvegarde et de restauration sous VSS, consultez Emplacements de sauvegarde et de restauration non par défaut.

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

IVssBackupComponents ::AddAlternativeLocationMapping

IVssComponent

IVssExamineWriterMetadata ::GetAlternateLocationMapping