Partager via


Méthode IFsiDirectoryItem2::AddTreeWithNamedStreams (imapi2fs.h)

Ajoute le contenu d’une arborescence de répertoires ainsi que les flux nommés associés à tous les fichiers à l’image du système de fichiers.

Syntaxe

HRESULT AddTreeWithNamedStreams(
  [in] BSTR         sourceDirectory,
  [in] VARIANT_BOOL includeBaseDirectory
);

Paramètres

[in] sourceDirectory

Chaîne qui contient le chemin relatif de l’arborescence de répertoires à créer. Le chemin d’accès doit contenir uniquement des caractères valides conformément aux conventions d’affectation de noms du système de fichiers. Ce paramètre ne peut pas être NULL.

Note Vous devez spécifier le chemin d’accès complet lors de l’appel de cette méthode à partir de l’élément de répertoire racine.
 

[in] includeBaseDirectory

Définissez sur VARIANT_TRUE pour inclure le répertoire dans sourceDirectory en tant que sous-répertoire dans l’image du système de fichiers. Sinon, VARIANT_FALSE.

Valeur retournée

S_OK est retourné en cas de réussite, mais d’autres codes de réussite peuvent être retournés à la suite de l’implémentation. Les codes d’erreur suivants sont généralement retournés en cas d’échec de l’opération, mais ne représentent pas les seules valeurs d’erreur possibles :

Code/valeur de retour Description
IMAPI_S_IMAGE_FEATURE_NOT_SUPPORTED
Valeur : 0x00AAB15FL
La fonctionnalité n’est pas prise en charge pour la révision actuelle du système de fichiers et, par conséquent, est créée sans cette fonctionnalité.
IMAPI_E_INVALID_PARAM
Valeur : 0xC0AAB101
Valeur spécifiée pour le paramètre '%1!ls!' est non valide.
IMAPI_E_NOT_IN_FILE_SYSTEM
Valeur : 0xC0AAB10B
ls!' ne fait pas partie du système de fichiers. Il doit être ajouté pour terminer cette opération.
IMAPI_E_DATA_STREAM_CREATE_FAILURE
Valeur : Valeur : 0xC0AAB12AL
Une erreur s’est produite lors de la création du flux de données pour '%1!ls!'.
IMAPI_E_DATA_STREAM_READ_FAILURE
Valeur : 0xC0AAB129L
Impossible de lire les données du flux fourni pour le fichier « %1!ls! ».
IMAPI_E_READONLY
Valeur : 0xC0AAB102
L’objet IFileSystemImage référencé est en mode lecture seule.
IMAPI_E_DUP_NAME
Valeur : 0xC0AAB112L
'%1!ls!' name existe déjà.
IMAPI_E_IMAGE_SIZE_LIMIT
Valeur : 0xC0AAB120L
L’ajout de « %1!ls! » entraînerait une image de résultat d’une taille supérieure à la limite configurée actuelle.
IMAPI_E_DATA_STREAM_INCONSISTENCY
Valeur : 0xC0AAB128L
Le flux de données fourni pour le fichier « %1!ls! » est incohérent ; % 2 attendu! I64d! octets, trouvé %3! I64d!
E_OUTOFMEMORY
Valeur : 0x8007000EL
Échec de l’allocation de la mémoire requise.

Notes

Le répertoire parent du nouveau sous-répertoire doit déjà exister dans l’image du système de fichiers.

La structure de sous-répertoire dans sourceDirectory spécifié est implicitement mise en miroir dans l’image du système de fichiers. Si des collisions de fichiers ou de répertoires se produisent, le contenu du répertoire source spécifié prévaut.

L’image du système de fichiers est remplacée par les répertoires et fichiers appropriés du répertoire source. Si une exception se produit pendant le traitement, l’image du système de fichiers revient à son état précédent.

Si cette méthode est appelée pour un objet de système de fichiers qui ne contient pas de fonction UDF dans la liste des systèmes de fichiers activés pour la création dans l’image résultante ou si la révision de la fonction UDF est inférieure à 2,00, cette méthode retourne le code de réussite IMAPI_S_IMAGE_FEATURE_NOT_SUPPORTED. Cela indique que les flux nommés ont été ajoutés, mais n’apparaissent pas dans l’image de système de fichiers résultante, sauf si la révision UDF 2.00 ou ultérieure est activée dans l’objet de système de fichiers.

Lorsque vous utilisez d’autres flux de données (ADS), il est important de noter que l’image du système de fichiers est limitée à 1 000 flux. Le dépassement de ce nombre entraîne la perte de données.

Cette méthode est prise en charge dans Windows Server 2003 avec Service Pack 1 (SP1), Windows XP avec Service Pack 2 (SP2) et Windows Vista via le Feature Pack Windows pour le stockage. Toutes les fonctionnalités fournies par ce package de mise à jour sont prises en charge en mode natif dans Windows 7 et Windows Server 2008 R2.

Spécifications

   
Client minimal pris en charge Windows Vista, Windows XP avec SP2 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête imapi2fs.h

Voir aussi

IFsiDirectoryItem2