Méthode IVssBackupComponentsEx ::SetSelectedForRestoreEx (vsbackup.h)

La méthode SetSelectedForRestoreEx indique si le composant sélectionnable spécifié est sélectionné pour la restauration vers un writer instance spécifié.

Syntaxe

HRESULT SetSelectedForRestoreEx(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] bool               bSelectedForRestore,
  [in] VSS_ID             instanceId
);

Paramètres

[in] writerId

Identificateur global unique (GUID) de la classe writer.

[in] ct

Type du composant. Consultez VSS_COMPONENT_TYPE pour connaître les valeurs possibles.

[in] wszLogicalPath

Chaîne de caractères larges terminée par null contenant le chemin logique du composant. Pour plus d’informations, consultez Chemin d’accès logique des composants.

La valeur de la chaîne contenant le chemin logique utilisé ici doit être la même que celle utilisée lors de l’ajout du composant.

Le chemin logique peut être NULL.

Il n’existe aucune restriction sur les caractères qui peuvent apparaître dans un chemin logique non NULL .

[in] wszComponentName

Chaîne de caractères larges terminée par un caractère null contenant le nom du composant.

La chaîne ne peut pas être NULL et doit contenir le même nom de composant que celui utilisé lors de l’ajout du composant au jeu de sauvegarde à l’aide de la méthode IVssBackupComponents ::AddComponent .

[in] bSelectedForRestore

Si la valeur de ce paramètre est true, le composant sélectionné a été sélectionné pour restauration. Si la valeur est false, le composant sélectionné n’a pas été sélectionné pour la restauration.

[in] instanceId

GUID du instance writer.

La valeur par défaut de ce paramètre est GUID_NULL.

Valeur retournée

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

Valeur Signification
S_OK
Indique que le composant spécifié a été sélectionné pour être restauré.
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_BAD_STATE
L’objet de composants de sauvegarde n’est pas initialisé, cette méthode a été appelée pendant une opération de restauration ou cette méthode n’a pas été appelée dans la séquence correcte.
VSS_E_OBJECT_NOT_FOUND
Le composant sélectionné n’existe pas dans le document Composants de sauvegarde, ou une instance dynamique de l’enregistreur correspondant à ce composant n’est pas en cours d’exécution sur le 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

SetSelectedForRestoreEx, qui déplace un composant vers un autre instance d’écriture, peut être appelé uniquement pour un writer qui prend en charge l’exécution de plusieurs instances de writer avec le même ID de classe et prend en charge le déplacement d’un composant vers un autre writer instance au moment de la restauration. Pour déterminer si un writer fournit cette prise en charge, appelez la méthode IVssExamineWriterMetadata ::GetBackupSchema .

SetSelectedForRestoreEx a une signification uniquement pour les restaurations qui ont lieu en mode composant.

SetSelectedForRestoreEx peut être appelé uniquement pour les composants qui ont été explicitement ajoutés au document de sauvegarde au moment de la sauvegarde à l’aide de AddComponent. La restauration d’un composant qui a été implicitement sélectionné pour la sauvegarde dans le cadre d’un ensemble de composants doit être effectuée en appelant SetSelectedForRestoreEx sur le composant ancêtre le plus proche qui a été ajouté au document. Si seules les données de ce composant doivent être restaurées, cela doit être effectué par le biais de la méthode IVssBackupComponents ::AddRestoreSubcomponent ; Cette opération ne peut être effectuée que si le composant peut être sélectionné pour la restauration (voir Utilisation de la possibilité de sélection et des chemins logiques).

Cette méthode doit être appelée avant la méthode IVssBackupComponents ::P reRestore .

La distinction entre les paramètres instanceId et writerID est nécessaire, car il est possible que plusieurs instances du même enregistreur s’exécutent sur l’ordinateur.

Si la valeur du paramètre instanceId est GUID_NULL, cela revient à appeler la méthode IVssBackupComponents ::SetSelectedForRestore .

Le paramètre instanceId est utilisé pour spécifier que le composant doit être restauré dans un autre instance writer. Si la valeur du paramètre instanceId n’est pas GUID_NULL, elle doit correspondre à l’ID de instance d’un writer instance avec le même ID de classe writer spécifié dans le paramètre writerID.

Vous pouvez trouver l’identificateur de classe d’un writer, l’identificateur instance et instance nom en appelant la méthode IVssExamineWriterMetadataEx ::GetIdentityEx.

Configuration requise

   
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008, Windows Server 2003 avec SP1 [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

IVssBackupComponents ::SetSelectedForRestore

IVssBackupComponentsEx

IVssExamineWriterMetadata ::GetBackupSchema

IVssExamineWriterMetadataEx ::GetIdentityEx