Fonction CfGetPlaceholderRangeInfo (cfapi.h)
Obtient des informations de plage sur un fichier ou un dossier d’espace réservé.
Syntaxe
HRESULT CfGetPlaceholderRangeInfo(
[in] HANDLE FileHandle,
[in] CF_PLACEHOLDER_RANGE_INFO_CLASS InfoClass,
[in] LARGE_INTEGER StartingOffset,
[in] LARGE_INTEGER Length,
[out] PVOID InfoBuffer,
[in] DWORD InfoBufferLength,
[out, optional] PDWORD ReturnedLength
);
Paramètres
[in] FileHandle
Handle du fichier d’espace réservé à interroger.
[in] InfoClass
Types de la plage de données d’espace réservé.
[in] StartingOffset
Décalage du point de départ de la plage de données.
[in] Length
Longueur de la plage de données. Un fournisseur peut spécifier CF_EOF
pour Length pour indiquer que la plage pour laquelle les informations sont demandées est de StartingOffset à la fin du fichier.
[out] InfoBuffer
Pointeur vers une mémoire tampon qui recevra les données. La mémoire tampon est un tableau de structures CF_FILE_RANGE , qui sont des paires décalage/longueur, décrivant les plages demandées.
[in] InfoBufferLength
Longueur d’InfoBuffer en octets.
[out, optional] ReturnedLength
Longueur de la plage retournée de données d’espace réservé dans InfoBuffer.
Valeur retournée
Si cette fonction réussit, elle retourne S_OK
. Sinon, il retourne un code d’erreur HRESULT . Certains codes d’erreur courants sont répertoriés dans le tableau suivant :
Code d'erreur | Signification |
---|---|
HRESULT_FROM_WIN32( ERROR_HANDLE_EOF ) | Cela signifie que StartingOffset>= la position de la fin du fichier. |
HRESULT_FROM_WIN32( ERROR_MORE_DATA ) | Cela implique que l’entrée CF_FILE_RANGE suivante ne tient pas dans la mémoire tampon fournie. L’appelant doit vérifier si une entrée est reçue ou non à l’aide de la valeur InfoBufferWritten retournée. |
Notes
Contrairement à la plupart des API d’espace réservé qui prennent un handle de fichier, celui-ci ne modifie pas le fichier de quelque manière que ce soit. Par conséquent, le handle de fichier nécessite uniquement READ_ATTRIBUTES accès.
Configuration requise
Client minimal pris en charge | Windows 10, version 1709 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2016 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | cfapi.h |
Bibliothèque | CldApi.lib |
DLL | CldApi.dll |