WofSetFileDataLocation, fonction (wofapi.h)
Permet de remplacer un fichier sauvegardé par un fichier physique par un fichier sauvegardé par un fournisseur de données système.
Syntaxe
HRESULT WofSetFileDataLocation(
[in] HANDLE FileHandle,
[in] ULONG Provider,
[in] PVOID ExternalFileInfo,
[in] ULONG Length
);
Paramètres
[in] FileHandle
Handle d’un fichier ouvert avec CreateFile ou une API similaire.
[in] Provider
Indique le fournisseur qui sauvegarde ce fichier. Les fournisseurs actuellement définis sont les suivants :
WOF_PROVIDER_WIM | Indique que les données du fichier doivent être obtenues à partir d’un fichier WIM. Lors de l’accès, les données sont extraites en toute transparence du fichier WIM 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é sous la même forme physique que celle qu’il avait si cette API n’était pas utilisée. |
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é sous la même forme physique que celle qu’il avait si cette API n’était pas utilisée. Ce fournisseur nécessite Windows 10. |
[in] ExternalFileInfo
Fournit des données spécifiques au fournisseur 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] Length
Spécifie la longueur des données spécifiques au fournisseur, en octets. Cela doit correspondre aux 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.
Remarques
Lors de l’utilisation de WOF_PROVIDER_FILE, l’opération peut échouer avec ERROR_COMPRESSION_NOT_BENEFICIAL. Cela indique qu’une tentative de compression des données a été effectuée, mais qu’aucun espace disque n’a été enregistré. Le fichier n’a donc pas été compressé. Pour la plupart des applications, cela peut être traité comme une condition de réussite.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | wofapi.h |
Bibliothèque | Wofutil.lib |
DLL | Wofutil.dll |