Partager via


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

La méthode AddPartialFile indique que seules des parties d’un fichier donné doivent être sauvegardées et de quelles parties il s’agit.

Seul un writer peut appeler cette méthode, et uniquement pendant une opération de sauvegarde.

Syntaxe

HRESULT AddPartialFile(
  [in] LPCWSTR wszPath,
  [in] LPCWSTR wszFilename,
  [in] LPCWSTR wszRanges,
  [in] LPCWSTR wszMetadata
);

Paramètres

[in] wszPath

Chaîne de caractères larges terminée par null contenant le chemin du fichier impliqué dans les opérations de fichier partielles.

Le chemin d’accès peut contenir des variables d’environnement (par exemple, %SystemRoot%), mais ne peut pas contenir de caractères génériques.

Il n’est pas nécessaire que le chemin se termine par une barre oblique inverse («  »). Il appartient aux applications qui récupèrent ces informations de case activée.

Ce chemin doit correspondre ou se trouver en dessous du chemin d’accès d’un jeu de fichiers déjà dans le composant (ou l’un de ses sous-composants si le composant définit un jeu de composants).

[in] wszFilename

Chaîne de caractères larges terminée par null contenant le nom du fichier impliqué dans les opérations de fichier partielles. Le nom du fichier (wszFilename) ne peut pas contenir de caractères génériques (* ou ?) et doit être cohérent avec la spécification de fichier d’un jeu de fichiers contenant le chemin d’accès source (wszPath).

[in] wszRanges

Chaîne de caractères larges terminée par null contenant une liste de décalages et de longueurs de fichier qui composent la plage de prise en charge partielle des fichiers (les sections du fichier à sauvegarder) ou le nom d’un fichier contenant une telle liste.

La spécification de la plage de prise en charge partielle des fichiers est requise, et cette valeur ne peut pas être NULL.

[in] wszMetadata

Chaîne de caractères larges terminée par null contenant toutes les métadonnées supplémentaires requises par un enregistreur pour valider une opération de restauration de fichier partielle. Les informations contenues dans cette chaîne de métadonnées seront opaques pour les demandeurs.

Si des métadonnées supplémentaires ne sont pas requises, cette valeur peut être NULL.

Valeur retournée

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

Valeur Signification
S_OK
Définissez correctement l’élément.
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
La méthode n’a pas été appelée par un writer ou, si elle est appelée par un writer, n’a pas été appelée pendant une opération de restauration.

Remarques

Seul un writer peut appeler cette méthode, et l’enregistreur ne peut pas appeler cette méthode pendant une opération de restauration.

La syntaxe de la liste de plages (wszRanges) est celle d’une liste séparée par des virgules au format offset1 :length1, offset2 :length2, où chaque décalage et longueur est un entier 64 bits spécifiant respectivement un décalage d’octets et une longueur en octets. Le décalage et la longueur peuvent être exprimés sous forme de valeurs hexadécimales ou décimales.

Si wszRange fait référence à un fichier contenant tous les décalages et longueurs (un fichier de plages), wszRange contient uniquement le chemin d’accès complet au fichier.

Un fichier de plages doit être un fichier binaire au format suivant :

  1. Entier 64 bits indiquant le nombre de plages de fichiers distinctes qui doivent être sauvegardées
  2. Chaque plage exprimée sous la forme d’une paire d’entiers 64 bits : le décalage dans le fichier sauvegardé en octets et la longueur des données à partir de ce décalage à sauvegarder
Dans les deux cas, une plage indique une sous-section d’un fichier donné qui doit être sauvegardé, indépendamment du reste du fichier.

Les demandeurs peuvent récupérer les informations de fichier partielles à l’aide de IVssComponent ::GetPartialFile et utiliser les informations de décalage et de longueur retournées par GetPartialFile pour restaurer les sections sauvegardées à l’emplacement approprié dans la copie du fichier sur le disque au moment de la restauration.

AddPartialFile peut être appliqué à un fichier déjà géré par le composant (ou l’un de ses sous-composants si le composant définit un jeu de composants), ou il peut ajouter un nouveau fichier au composant et indiquer qu’il participera à des opérations de fichier partielles.

Lorsque vous indiquez que le fichier à participer est un nouveau fichier, ce fichier doit exister sur un volume copié en ombre et son chemin (wszPath) doit correspondre ou se trouver sous un chemin déjà dans le composant (ou l’un de ses sous-composants si le composant définit un jeu de composants). Toutefois, la spécification du fichier (wszFileSpec) ne doit pas correspondre à celle des composants.

Les fichiers nouvellement ajoutés ne prennent pas en charge les mappages d’emplacements de substitution.

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 ::SetRangesFilePath

IVssComponent

IVssComponent ::GetPartialFile

IVssComponent ::GetPartialFileCount