ReadRange
Parties de document, données variables, édition de documents
Description
Lit une plage d'octets au travers d'une TCallbackByteRangeSource dans un tampon fourni par l'appelant en transmettant au callback de lecture
Syntaxe
Function TCallbackByteRangeSource.ReadRange(StartOffset: Int64;
Count: LongInt; Buffer: PAnsiChar): LongInt;
Paramètres
StartOffset | Décalage à base zéro du premier octet à lire |
|---|---|
Count | Nombre d'octets demandés |
Buffer | Tampon de l'appelant qui reçoit les octets demandés |
Remarques
La requête est rejetée quand aucun callback de lecture n'est affecté, Buffer vaut Nil, Count vaut zéro ou négatif, StartOffset est négatif ou StartOffset atteint la taille totale
Une requête qui dépasse la taille totale est bornée aux octets restants au lieu d'être rejetée
Un résultat de callback inférieur à zéro est traité comme zéro, et un résultat supérieur au comptage borné est réduit au comptage
Le message d'erreur enregistré pour une requête rejetée ou une exception de callback est disponible via GetLastError
Valeurs de retour
0 | La demande était invalide, le callback de lecture a levé une exception ou le callback n'a transféré aucun octet ; GetLastError décrit l'échec lorsqu'un message a été enregistré |
|---|---|
| Positive | Nombre d'octets réellement lus, jamais plus que la demande bornée |
Voir aussi
GetLastError, IsRangeAvailable, GetTotalSize, GetRangeSupported, LoadFromRangeSource