![]() |
[solved] TSocket Kommunikation geht nicht
Ich wollte mit den TSocket Komponenten von Delphi 2009 einen Chat schreiben.
Der Server geht prima. Er kann Nachrichten annehmen und diese auch wieder versenden. Wenn jedoch der Client was verschickt, so sagt der Server zwar er hat was erhalten, aber der Inhalt entspricht nicht dem, was in dem edit1.feld drin stand. Hier die ganzen code ausschnitte: Senden Button für Chat (Server und Client sind in einem Programm untergebracht):
Delphi-Quellcode:
procedure TForm1.SendenClick(Sender: TObject);
var msg : TChat; I : integer; begin if online_modus = 1 then begin if online_client = 1 then begin // wenn client on ist //msg.name := 'client'; msg.aktion := 'ch'; msg.chat := edit1.text; edit1.Text := ''; Client.Socket.SendBuf (msg, SizeOf(msg)); // senden end else if online_server >= 1 then begin // wenn server on ist //msg.name := 'server'; msg.aktion := 'ch'; msg.chat := edit1.Text; edit1.Text := ''; with Server.Socket do begin for I := 0 to ActiveConnections-1 do Connections[I].SendBuf (msg, SizeOf(msg)) end; {with} end; end; Server empfangen
Delphi-Quellcode:
Der record TChat:
procedure TForm1.ServerClientRead(Sender: TObject; Socket: TCustomWinSocket);
var msg : TChat; begin showmessage('server hat etwas erhalten'); // dies diente dazu, um zu sehen ob der fehler doch evt. am server liegen könnte if msg.aktion = 'ch' then begin // chat... // DIESER TEIL WIRD IRGENDWIE NICHT AUSGEFÜLLT memo1.lines.add('client' + ': '+msg.chat); end; end;
Delphi-Quellcode:
type TChat = Record
chat : string[255]; name : string[20]; aktion : string[20]; end; Da der Client alles prima empfängt, poste ich den TForm1.ClientRead Part nicht. Leider seh ich da oben keinen Fehler o.O |
Re: TClientSocket sendet falsch und TServerSocket richtig
Du liest msg doch gar nicht ein. Es fehlt ein Socket.ReadBuf(msg, SizeOf(msg)).
|
Re: TClientSocket sendet falsch und TServerSocket richtig
:P Habe den Fehler gerade selbst gesehen ^^
Trotzdem danke :P |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz