ReadRange

Dokumentdele, variabeldata, dokumentredigering

Beskrivelse

Læser et byteinterval via en TCallbackByteRangeSource ind i en kalderlevert buffer ved at videreføre til read-callbacken

Syntaks

Function TCallbackByteRangeSource.ReadRange(StartOffset: Int64;
  Count: LongInt; Buffer: PAnsiChar): LongInt;

Parametre

StartOffset0-baseret forskydning af den første byte, der skal læses
CountAntal ønskede bytes
BufferKalderbuffer, der modtager de ønskede bytes

Bemærkninger

Anmodningen afvises, når intet læse-callback er tildelt, Buffer er Nil, Count er nul eller negativ, StartOffset er negativ, eller StartOffset når den samlede størrelse

En anmodning, der strækker sig forbi den samlede størrelse, klemmes til de resterende bytes i stedet for at blive afvist

Et callback-resultat under nul behandles som nul, og et resultat over det klemte antal reduceres til antallet

Fejlmeddelelsen registreret for en afvist anmodning eller en callback-undtagelse er tilgængelig gennem GetLastError

Returværdier

0Anmodningen var ugyldig, read-callbacken udløste en exception, eller callbacken overførte ingen bytes; GetLastError beskriver fejlen, når en meddelelse blev registreret
PositiveAntal faktisk læste bytes, aldrig mere end den afgrænsede anmodning

Se også

GetLastError, IsRangeAvailable, GetTotalSize, GetRangeSupported, LoadFromRangeSource