Zwei UDP Streams gleichzeitig senden
-
Hallo zusammen,
bis jetzt sende ich einen UDP Stream (NMUDP)
TMemoryStream *MyStream = new TMemoryStream(); int I; int ret = 0; AnsiString C; C = sSend; I = C.Length(); MyStream->Write(&C[1], I); NMUDPSend->SendStream(MyStream); return(ret);
Ich komme einfach nicht darauf wie ich 2 Streams gleichzeitig senden kann, habe folgendes versucht:
TMemoryStream *Stream1 = new TMemoryStream(); TMemoryStream *Stream2 = new TMemoryStream(); int I; int J; int ret = 0; AnsiString Send1; AnsiString Send2; Send1 = sSend1; Send2 = sSend2; I = Send1.Length(); J = Send2.Length(); Stream1->Write( &Send1[1], I ); Stream2->Write( &Send2[1], J ); NMUDPSend->SendStream(Stream1, Stream2); //Fehler beim Aufruf von Sendstream (zu viele Parameter) //oder NMUDPSend->SendStream(Stream1); //Auf der Client Seite kommt 2x der gleiche Wert an... NMUDPSend->SendStream(Stream2); //
Client/Empfangs Seite:
AnsiString Send1; AnsiString Send2; int I; int J; TMemoryStream *Stream1 = new TMemoryStream(); NMUDPEmpf->ReadStream(Stream1); Send1.SetLength(NumberBytes); Stream1->Read(&Send1[1], NumberBytes); TMemoryStream *Stream2 = new TMemoryStream(); NMUDPEmpf->ReadStream(Stream2); Send2.SetLength(NumberBytes); Stream2->Read(&Send2[1], NumberBytes); I = StrToInt(Send1); J = StrToInt(Send2); StatusBar->Panels->Items[0]->Text = I; //Gleicher Wert wie J StatusBar->Panels->Items[1]->Text = J; //Gleicher Wert wie I
Bin kein Prog.Profi
und für jeden schnippsel code dankbarmfg, TLL.
-
Hi
habe die beiden Strings einfach mit "," zusammengefügt.
Doch jetzt stellt sich die Frage, wie ich diesen String wieder teile...
-
TStringList CommaText
oder DelimitedText und Delimiter
-
oki danke das wars