Partager via


code de contrôle FSCTL_GET_EXTERNAL_BACKING

Le code de contrôle FSCTL_GET_EXTERNAL_BACKING obtient les informations de stockage d’un fichier auprès d’un fournisseur de stockage externe. Les fournisseurs de stockage incluent le fournisseur WIM (Windows Image Format) ou le fournisseur de fichiers compressés individuels. Le contenu des fichiers sauvegardés en externe peut résider sur des volumes autres que sur le volume contenant le fichier interrogé.

Pour effectuer cette opération, appelez FltFsControlFile ou ZwFsControlFile avec les paramètres suivants.

Paramètres

  • Instance [in] : FltFsControlFile uniquement. Pointeur de instance opaque pour l’appelant. Ce paramètre est obligatoire et ne peut pas être NULL.

  • FileObject [in] : FltFsControlFile uniquement. Objet pointeur de fichier du fichier pour lequel les informations de stockage sont interrogées. Ce paramètre est obligatoire et ne peut pas être NULL.

  • FileHandle [in] : ZwFsControlFile uniquement. Handle du fichier pour lequel les informations de stockage sont interrogées. Ce paramètre est obligatoire et ne peut pas être NULL.

  • FsControlCode [in] : code de contrôle pour l’opération. Utilisez FSCTL_GET_EXTERNAL_BACKING pour cette opération.

  • InputBuffer [in] : Aucun. Défini sur NULL.

  • InputBufferLength [in] : défini sur 0.

  • OutputBuffer [out] : pointeur vers la mémoire tampon de sortie, qui doit avoir une taille suffisante pour recevoir une structure WOF_EXTERNAL_INFO suivie des données du fournisseur. Pour les fichiers adossés à WIM, WOF_EXTERNAL_INFO est suivi d’une structure WIM_PROVIDER_EXTERNAL_INFO . Pour les fichiers compressés individuellement, WOF_EXTERNAL_INFO est suivi d’une structure FILE_PROVIDER_EXTERNAL_INFO_V1 .

  • OutputBufferLength [out] : taille, en octets, de la mémoire tampon pointée par OutputBuffer.

  • LengthReturned [out] : spécifie le nombre d’octets écrits dans OutputBuffer en cas de réussite de l’exécution.

Bloc d’état

FltFsControlFile ou ZwFsControlFile retourne STATUS_SUCCESS si l’opération réussit. Sinon, la fonction appropriée peut retourner l’une des valeurs NTSTATUS suivantes.

Code Signification
STATUS_OBJECT_NOT_EXTERNALLY_BACKED Le fichier n’est pas sauvegardé en externe.
STATUS_INVALID_DEVICE_REQUEST Le service de sauvegarde n’est pas présent ou n’est pas démarré.

Remarques

Lorsque le fournisseur de stockage pour la source de données à mettre à jour est un fichier WIM, la mémoire tampon de sortie contient une structure WOF_EXTERNAL_INFO suivie d’une structure WIM_PROVIDER_EXTERNAL_INFO . OutputBufferLength doit être au moins sizeof(WOF_EXTERNAL_INFO) + sizeof(WIM_PROVIDER_EXTERNAL_INFO). Lorsque le fournisseur de stockage est un fichier compressé individuellement, la mémoire tampon de sortie contient une structure WOF_EXTERNAL_INFO suivie d’une structure de FILE_PROVIDER_EXTERNAL_INFO_V1 .

Configuration requise

Type d’exigence Condition requise
Client minimal pris en charge Mise à jour Windows 8.1
En-tête Ntifs.h (inclure Ntifs.h ou Fltkernel.h)

Voir aussi

FltFsControlFile

ZwFsControlFile

FSCTL_SET_EXTERNAL_BACKING

WIM_PROVIDER_EXTERNAL_INFO

WOF_EXTERNAL_INFO