[Delphi] Bufor i przesunięcie pozycji

0

Witam,

Przesyłam plik klientem TCP/IP. Plik przesyłam fragmentami wczytywanymi do zmiennej FBuff: Pointer; Bufor ma wielkość 8kB:

GetMem(FBuff, 8192)

Problem w tym, że socket nie wysyła od razu całego mojego buforu tylko zwraca ile dokładnie wysłał bajtów, więc cały proces jest w pętli aż do wysłania całego bufora. Nie wiem tylko jak w kolejnych obrotach pętli przesunąć pozycję w buforze o ilość wcześniej wysłanych bajtów. W przypadku stringa jest to proste bo można wykorzystać index String[od_pozycji]. Wiem, że mogę zastosować tablicę FBuff: array[0..8192] of byte, ale ciekawi mnie bardziej sposób operacji na obszarze w pamięci w pierwszym przykładzie.

Pozdrawiam

0
var FBuff:pbyte; // PByte=^Byte;

inc(FBuff,ile_bajtow_przesuwamy);

1 użytkowników online, w tym zalogowanych: 0, gości: 1