Einzelnen Beitrag anzeigen

PetziBaer

Registriert seit: 22. Dez 2015
4 Beiträge
 
#5

AW: TServer/Client -Socket Datenaustausch

  Alt 14. Jan 2016, 10:50
Habe das Problem jetzt gelöst.

Mein Record besteht nun aus einem extra String für die Clients.

Code:
type
  TChatMessage = packed Record
    Text : String[255];
    User : String[255];
    Destination : String[255];
    Clients : String[255];
    Command : Integer;
  End;
Zur Zeit lese ich jedes Item der ListBox einzeln aus, hänge es an den String hinten an und trenne die Items durch ein Semikolon.

Code:
for i := 0 to listBox.Items.Count -1 do
  begin
    chatMessage.Clients := chatMessage.Clients + listBox.Items[i] + ';';
  end;
Der Client trennt diesen String jetzt anhand der Semikolons.

Code:
procedure Split(Delimiter: Char; Str: string; ListOfStrings: TStrings);
begin
   ListOfStrings.Clear;
   ListOfStrings.Delimiter      := Delimiter;
   ListOfStrings.StrictDelimiter := True;
   ListOfStrings.DelimitedText  := Str;
end;
...

  splitData := TStringList.Create();
  Split(';', chatMessage.Clients, splitData);
Ankommen tut nun alles richtig, frage mich allerdings immernoch ob es eventuell eine bessere/schönere Möglichkeit gibt.

Ziel ist es das später auch Dateien versendet werden sollen und wenn ich so weiter mache komme ich wohl sehr bald an die Grenzen. (schätze ich)

Habe mal angefangen mich mit dem Thema Stream auseinander zu setzen, allerdings gibt es da noch die ein oder anderen Fragezeichen bei mir.
  Mit Zitat antworten Zitat