Thema: Delphi Sockets -> SendBuf

Einzelnen Beitrag anzeigen

sAibo

Registriert seit: 6. Mai 2004
20 Beiträge
 
#1

Sockets -> SendBuf

  Alt 3. Jun 2004, 13:54
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
  Mit Zitat antworten Zitat