Méthode IVssBackupComponents ::AddToSnapshotSet (vsbackup.h)

La méthode AddToSnapshotSet ajoute un volume d’origine ou un partage de fichiers distant d’origine au jeu de clichés instantanés.

Syntaxe

HRESULT AddToSnapshotSet(
  [in]  VSS_PWSZ pwszVolumeName,
  [in]  VSS_ID   ProviderId,
  [out] VSS_ID   *pidSnapshot
);

Paramètres

[in] pwszVolumeName

Chaîne de caractères larges terminée par null contenant le nom du volume ou le chemin UNC du partage de fichiers distant à copier en ombre. Le nom ou le chemin UNC doit être dans l’un des formats suivants et doit inclure une barre oblique inverse de fin (\) :

  • Chemin d’accès d’un dossier monté, par exemple, Y :\MountX\
  • Une lettre de lecteur, par exemple, D :\
  • Chemin d’accès guid du volume au format \\ ?\Volume{GUID}\ (où GUID identifie le volume)
  • Chemin d’accès UNC qui spécifie un partage de fichiers distant, par exemple, \\Clusterx\Share1\

[in] ProviderId

Fournisseur à utiliser. GUID_NULL peut être utilisé, auquel cas le fournisseur par défaut est utilisé.

[out] pidSnapshot

Identificateur retourné du cliché instantané ajouté.

Valeur retournée

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

Valeur Signification
S_OK
0x00000000L
Ajout du volume ou du partage de fichiers distant au jeu de clichés instantanés.
E_ACCESSDENIED
0x80070005L
L’appelant ne dispose pas de privilèges de sauvegarde suffisants ou n’est pas administrateur.
E_INVALIDARG
0x80070057L
L’une des valeurs de paramètre n’est pas valide.
E_OUTOFMEMORY
0x8007000EL
L’appelant n’a plus de mémoire ou d’autres ressources système.
VSS_E_BAD_STATE
0x80042301L
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_MAXIMUM_NUMBER_OF_VOLUMES_REACHED
0x80042312L
Le nombre maximal de volumes ou de partages de fichiers distants ont été ajoutés au jeu de clichés instantanés. Le volume ou le partage de fichiers distant spécifié n’a pas été ajouté au jeu de clichés instantanés.
VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED
0x80042317L
Le volume ou le partage de fichiers distant a été ajouté au nombre maximal de jeux de clichés instantanés. Le volume ou le partage de fichiers distant spécifié n’a pas été ajouté au jeu de clichés instantanés.
VSS_E_NESTED_VOLUME_LIMIT
0x8004232CL
Le volume spécifié est imbriqué trop profondément pour participer à l’opération VSS. Les raisons possibles de cette erreur sont les suivantes :
  • Tentative de création d’un cliché instantané d’un volume qui réside sur un disque dur virtuel contenu dans un autre disque dur virtuel.
  • Essayez de créer un cliché instantané d’un volume de disque dur virtuel lorsque le volume qui contient le disque dur virtuel se trouve également dans le même jeu de clichés instantanés.
Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Ce code de retour n’est pas pris en charge.
VSS_E_OBJECT_NOT_FOUND
0x80042308L
pwszVolumeName ne correspond pas à un volume existant ou à un partage de fichiers distant.
VSS_E_PROVIDER_NOT_REGISTERED
0x80042304L
ProviderId ne correspond pas à un fournisseur inscrit.
VSS_E_PROVIDER_VETO
0x80042306L
Erreur du fournisseur attendue. Le fournisseur a enregistré l’erreur dans le journal des événements. Pour plus d’informations, consultez Gestion des événements et des erreurs sous VSS.
VSS_E_SNAPSHOT_SET_IN_PROGRESS
0x80042316L
Une autre création de cliché instantané est déjà en cours. Se produit lors de l’ajout d’un volume CSV à un instantané défini à partir de plusieurs nœuds en même temps, ou lors de l’ajout d’un partage de scale-out au jeu de instantané à partir de plusieurs nœuds clients SMB en même temps.
VSS_E_VOLUME_NOT_SUPPORTED
0x8004230CL
La valeur du paramètre ProviderId est GUID_NULL et aucun fournisseur VSS n’indique qu’il prend en charge le volume ou le partage de fichiers distant spécifié.
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER
0x8004230EL
Le volume ou le partage de fichiers distant n’est pas pris en charge par le fournisseur spécifié.
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.

VSS_E_UNEXPECTED_PROVIDER_ERROR
0x8004230FL
Le fournisseur a retourné un code d’erreur inattendu. Ce code d’erreur est retourné uniquement via la méthode QueryStatus sur l’interface IVssAsync retournée dans le paramètre ppAsync .

Remarques

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP et Windows Server 2003 : Les partages de fichiers distants ne sont pas pris en charge tant qu’Windows 8 et Windows Server 2012.

Si pwszVolumeName est un chemin de partage UNC, la partie nom du serveur doit être au format de nom d’hôte ou de nom de domaine complet. Les noms de partage UNC avec des adresses IP doivent être normalisés en appelant la méthode IVssBackupComponentsEx4 ::GetRootAndLogicalPrefixPaths avant qu’ils ne soient transmis à AddToSnapshotSet.

Le nombre maximal de volumes copiés dans un seul jeu de clichés instantanés s’élève à 64.

Si ProviderId est GUID_NULL, le fournisseur par défaut est sélectionné selon l’algorithme suivant :

  1. Si un fournisseur de matériel prend en charge le volume donné ou le partage de fichiers distant, ce fournisseur est sélectionné.
  2. Si aucun fournisseur de matériel n’est disponible, si un fournisseur de logiciels prend en charge le volume donné, il est sélectionné.
  3. Si aucun fournisseur de matériel ou de logiciel n’est disponible, le fournisseur système est sélectionné. (Il n’existe qu’un seul fournisseur système préinstallé, qui doit prendre en charge tous les volumes locaux non amovibles.)
Cette méthode ne peut pas être appelée pour un disque dur virtuel imbriqué dans un autre disque dur virtuel.

Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Les disques durs virtuels ne sont pas pris en charge.

L’identificateur de cliché instantané retourné dans le paramètre pidSnapshot est stocké dans le document Composants de sauvegarde. Toutefois, il n’existe aucune méthode pour interroger ces informations, et l’appelant peut avoir besoin de les stocker afin qu’elles puissent être utilisées lors de la restauration.

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

IVssBackupComponents

IVssBackupComponentsEx4 ::GetRootAndLogicalPrefixPaths

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES