Partager via


Méthode IFsiDirectoryItem ::AddTree (imapi2fs.h)

Ajoute le contenu d’une arborescence de répertoires à l’image du système de fichiers.

Syntaxe

HRESULT AddTree(
  [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.

Spécifiez 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 de retour Description
E_OUTOFMEMORY
Impossible d’allouer la mémoire requise.

Valeur : 0x8007000E

E_POINTER
Le pointeur n’est pas valide.

Valeur : 0x80004003

IMAPI_E_DIRECTORY_READ_FAILURE
L’échec de l’énumération des fichiers dans l’arborescence de répertoires n’est pas accessible en raison des autorisations.

Valeur : 0xC0AAB12BL

IMAPI_E_DATA_STREAM_CREATE_FAILURE
Un ou plusieurs des fichiers de l’arborescence de répertoires sont inaccessibles en raison des autorisations.

Valeur : 0xC0AAB12A

IMAPI_E_DATA_STREAM_READ_FAILURE
Impossible de lire les données du flux fourni pour le fichier « %1 !ls ! ».

Valeur : 0xC0AAB129

IMAPI_E_INVALID_PARAM
La valeur spécifiée pour le paramètre %1 !ls ! n’est pas valide.

Valeur : 0xC0AAB101

IMAPI_E_NOT_IN_FILE_SYSTEM
ls !' ne fait pas partie du système de fichiers. Il doit être ajouté pour terminer cette opération.

Valeur : 0xC0AAB10B

IMAPI_E_READONLY
L’objet FileSystemImage est en mode lecture seule.

Valeur : 0xC0AAB102

IMAPI_E_IMAGE_SIZE_LIMIT
L’ajout de ce fichier ou répertoire entraînerait une image de résultat ayant une taille supérieure à la limite configurée actuelle.

Valeur : 0xC0AAB120

IMAPI_E_INVALID_PATH
Chemin d’accès '%1 !s !' est mal formé ou contient des caractères non valides.

Valeur : 0xC0AAB110

IMAPI_E_DUP_NAME
ls !' name existe déjà.

Valeur : 0xC0AAB112

IMAPI_E_NO_UNIQUE_NAME
Tentative d’ajout de « %1 !ls ! » failed : impossible de créer un nom unique spécifique au système de fichiers pour %2 !ls ! .

Valeur : 0xC0AAB113

IMAPI_E_ISO9660_LEVELS
ISO9660 est limité à 8 niveaux de répertoires.

Valeur : 0xC0AAB131

IMAPI_E_TOO_MANY_DIRS
Cette image de système de fichiers a trop de répertoires pour %1 !ls ! .

Valeur : 0xC0AAB130

IMAPI_E_DIR_NOT_FOUND
Le répertoire « %1 !s ! » introuvable dans la hiérarchie FileSystemImage.

Valeur : 0xC0AAB11A

 
Note Les valeurs retournées par les fonctions GetFileAttributesEx et FindFirstFile peuvent également être retournées ici.
 

Remarques

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

La structure du sous-répertoire dans le répertoire source 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.

Configuration requise

Condition requise Valeur
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

IFsiDirectoryItem

IFsiDirectoryItem ::Add

IFsiDirectoryItem ::AddDirectory

IFsiDirectoryItem ::AddFile

IFsiDirectoryItem ::Remove