ReadRange

Belge parçaları, değişken veri, belge düzenleme

Açıklama

Bir bayt aralığını, okuma geri çağrısına yönlendirme yoluyla bir TCallbackByteRangeSource üzerinden arayanın sağladığı tampona okur

Sözdizimi

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

Parametreler

StartOffsetOkunacak ilk baytın 0 tabanlı uzaklığı
Countİstenen bayt sayısı
Bufferİstenen baytları alan arayan tamponu

Açıklamalar

Okuma geri çağrımı atanmamışken, Buffer Nil iken, Count sıfır veya negatifken, StartOffset negatifken veya StartOffset toplam boyuta ulaştığında istek reddedilir

Toplam boyutu aşan bir istek reddedilmek yerine kalan baytlara kırpılır

Sıfırın altındaki bir geri çağrım sonucu sıfır sayılır ve kırpılan sayının üstündeki sonuç sayıya düşürülür

Reddedilen bir istek veya geri çağrım özel durumu için kaydedilen hata iletisi GetLastError üzerinden alınabilir

Dönüş değerleri

0İstek geçersizdi, okuma geri çağrısı bir istisna oluşturdu veya geri çağrı hiç bayt aktarmadı; bir ileti kaydedildiyse GetLastError hatayı açıklar
PositiveGerçekte okunan bayt sayısı; asla sınırlandırılmış istekten fazla olmaz

Ayrıca bkz

GetLastError, IsRangeAvailable, GetTotalSize, GetRangeSupported, LoadFromRangeSource