Partager via


WofIsExternalFile, fonction (wofapi.h)

Permet de déterminer si un fichier est sauvegardé par un fichier physique ou par un fournisseur de données système, et indique éventuellement le fournisseur ou des données supplémentaires sur le fichier.

Syntaxe

HRESULT WofIsExternalFile(
  [in]                LPCWSTR FilePath,
  [out, optional]     PBOOL   IsExternalFile,
  [out, optional]     PULONG  Provider,
  [out, optional]     PVOID   ExternalFileInfo,
  [in, out, optional] PULONG  BufferLength
);

Paramètres

[in] FilePath

Spécifie le chemin d’accès au fichier pour lequel l’état de stockage est souhaité.

[out, optional] IsExternalFile

Pointe éventuellement vers une valeur BOOL. En cas de retour réussi, cette valeur est TRUE si l’objet est sauvegardé en externe, FALSE s’il s’agit d’un fichier physique.

[out, optional] Provider

Pointe éventuellement vers une valeur ULONG. En cas de retour réussi, cette valeur est définie sur le fournisseur qui sauvegarde cet objet en externe. Les fournisseurs actuellement définis sont les suivants :

WOF_PROVIDER_WIM Indique que les données du fichier résident dans un fichier WIM distinct. Lors de l’accès, les données sont extraites, décompressées et fournies aux applications en toute transparence. Si le contenu du fichier est modifié, les données sont décompressées en toute transparence et le fichier est restauré dans un fichier standard.
WOF_PROVIDER_FILE Indique que les données du fichier doivent être compressées et stockées avec le fichier lui-même. Lors de l’accès, les données sont décompressées en toute transparence et fournies aux applications. Si le contenu du fichier est modifié, les données sont décompressées en toute transparence et le fichier est restauré dans un fichier standard. Ce fournisseur nécessite Windows 10.

[out, optional] ExternalFileInfo

Pointe éventuellement vers une mémoire tampon allouée à l’appelant. En cas de retour réussi, cette mémoire tampon contient des informations supplémentaires sur l’état du fichier. Si cette valeur est fournie, BufferLength doit également être spécifié. Les structures de données pour chaque fournisseur défini sont les suivantes :

WOF_PROVIDER_WIM WIM_EXTERNAL_FILE_INFO
WOF_PROVIDER_FILE WOF_FILE_COMPRESSION_INFO

[in, out, optional] BufferLength

Pointe éventuellement vers une valeur qui contient la longueur de la mémoire tampon spécifiée dans ExternalFileInfo. Au retour, cette valeur est définie sur la taille de la mémoire tampon consommée ou sur la taille de la mémoire tampon requise. Si la mémoire tampon est d’une longueur insuffisante, cette fonction réussit à indiquer la taille requise et ne remplira pas la mémoire tampon dans ExternalFileInfo. Cette longueur doit correspondre à l’une des structures définies ci-dessus :

WOF_PROVIDER_WIM sizeof(WIM_EXTERNAL_FILE_INFO)
WOF_PROVIDER_FILE sizeof(WOF_FILE_COMPRESSION_INFO)

Valeur retournée

Cette fonction retourne un HRESULT indiquant la réussite ou la raison de l’échec. Si la mémoire tampon spécifiée dans ExternalFileInfo n’est pas de la taille correcte, la fonction retourne S_OK et indique la taille de mémoire tampon requise dans BufferLength.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête wofapi.h
Bibliothèque Wofutil.lib
DLL Wofutil.dll

Voir aussi

FSCTL_GET_EXTERNAL_BACKING