[Delphi] Problem z paramtrem w funkcji typu Array

0

Witam!

Robię mały program, wysyłający na RS232 dane z bufora... wszystko w porządku tylko ten program ma też memo LOG'u więc złączyłem sobie wysyłanie na COM z dodawaniem wysyłanych danych do logu i wyszło mi takie coś:

procedure TMain.ComSend(buffer:array of char;from,len:integer);
var i:integer;
begin
mLog.Lines.Add('>');
for i:=from to len do begin
com.WriteStr(buffer[i]);
mLog.Lines[mLog.Lines.Count-1]:=mLog.Lines[mLog.Lines.Count-1]+' '+Inttohex(Ord(buffer[i]),2);
end;
end;

problem w tym iż jeśli wywołam tą funkcje podając jako Buffer - zmienną:

buffer: array [1..256] of char;

i jeśli wprowadzę w niego więcej niż 1-den znak to program sie wysypuje...

Ktoś ma pomysł jak udostępnić buffer funkcji tak aby ta mogła czytać z niego wszystkie elmenenty?

Pozdrawiam

0

Podajac jako parametr tablice ma ona zawsze indeksy od 0 do dlugosc-1, bez wzgledu na to jak ta tablica faktycznie wyglada. Takze musisz przez nia przechodzic np tak:

for i := 0 to Length(buffer)-1 do
0

mi sie to nie podoba
1..256
pewnie chodzi o 0..255

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