Hallo an alle erstmal, ich hoffe dass Ihr die Frage, die gleich kommt noch nicht Leid seid und euch evtl. nochmal fünf Minuten für mich Zeit nehmt.
Um was gehts es:
Tutorial
genauer um den letzten Punkt: Komunikation mittels SendBuf
Mein Problem:
Ich bekomm den Record auf der anderen Seite einfach nicht mehr raus...
Mein Code :-/
Delphi-Quellcode:
type
CustomRec = record
Text: String[20];
Zahl: byte;
end;
...
procedure TForm1.Button1Click(Sender: TObject);
var
Rec: CustomRec;
begin
//Record Werte zugewiesen
rec.Text:=Edit1.Text;
rec.Zahl:=StrToInt(Edit2.Text); //Edit2 nur Zahlen eingeben!
//testen ob der richtige wert zugewiesen worden ist
Memo1.Lines.Add(rec.Text);
Memo1.Lines.Add(IntToStr(rec.Zahl)); //funktioniert ja schonmal =)
//Unser Record wird verschickt!
Client.Socket.SendBuf(Rec,sizeof(Rec));
end;
procedure TForm1.ServerClientRead(Sender: TObject; Socket: TCustomWinSocket);
var
Rec: CustomRec;
begin
//record abholen
Client.socket.ReceiveBuf(Rec,SizeOf(Rec)); //könnte es hier evtl Server.Socket... heißen? es kommt doch beim Server an... funzt aber auch nicht :(
//...und im Memofeld ausgeben
Memo1.Lines.Add(rec.Text);
Memo1.Lines.Add(IntToStr(rec.Zahl));
// AUSGABE: erste zeile nichts und zweite zeile Null :-(
end;
*heul* ich weiß garnich was ich noch versuchen soll... so viel zu ändern gibts an den paar Zeilen ja auch nicht... und so langsam ist es echt frustrierend *g* wegen so nem kleinen Problem nich mehr weiter zu kommen....
Zu der Frage warum ich das nich über die
Indy Komponente versucht...
die is bei uns in der Schule nicht installiert und wir sind deswegen auf die klasischen Sockets angewiesen...
Ach und die Verbindung und so ist auch alles Richtig hergestellt...
Danke schonmal an alle
ich hoffe Ihr könnt mir helfen
Vielleicht mag ja auch einer nen paar Zeilen für mich tippen
möchte jetzt endlich weiter machen können =)
Gruß Tobias