Einzelnen Beitrag anzeigen

Grizu

Registriert seit: 22. Aug 2016
20 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

Indy 10 client <STX>Daten<ETX> senden

  Alt 29. Aug 2016, 18:30
Hallo,
vielleicht kann jemand helfen.
ich habe einen Indy10 Client, der sich zu einem Server verbindet, nun möchte ich Daten die in einem TEdit stehen zum Server senden.
Dieser erwartet das die Daten in folgendem Format kommen: <STX>Daten<ETX>

Ich habe da nun heute einiges versucht, aber es funktioniert nicht.

zuletzt habe ich folgendes probiert:

Delphi-Quellcode:
MIRec.values := txt_interface_msc_sendstring.text;
  Buffer := RawToBytes(MIRec, SizeOf(MIRec));
  msc_client.IOHandler.Write(Buffer);
vorher habe ich das EDIT mal byteweise in ein TID Bytes gelesen
und dann vorher 02 für ETX und hinterher 03 für STX angehangen. Funktionierte aber auch nicht.
Delphi-Quellcode:
begin
a := Length(txt_interface_msc_sendstring.text);
dat := txt_interface_msc_sendstring.text;

i1 := 1;
i2 := 1;
setlength(s, i1);

s[0] := 02; // STX


for i := 1 to a do begin
i1 := i1 + 1;
setlength(s, i1);
s[i1] := ord(dat[i2]);
i2 := i2 + 1;
end;
i1 := i1 + 1;
setlength(s, i1);
edit3.Text := inttostr(i1);
s[i1] := 3; // ETX
a := length(s);
msc_client.IOHandler.Write(s);
Weiß jemand wie das geht???

Geändert von Grizu (29. Aug 2016 um 18:34 Uhr)
  Mit Zitat antworten Zitat