AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TClientSocket verschluckt eine Nachricht

TClientSocket verschluckt eine Nachricht

Ein Thema von Quake · begonnen am 31. Mär 2007 · letzter Beitrag vom 31. Mär 2007
Antwort Antwort
Quake

Registriert seit: 25. Aug 2003
222 Beiträge
 
Delphi 7 Enterprise
 
#1

TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 10:05
Hallo,

ich habe mir zum Testen zwei kleine Programme geschrieben, ein Server und einen Client. Das funktionier auch alles bis auf eine Kleinigkeit.
Beim Client möchte ich beim Programmstart eine Nachricht an den Server schicken. Dazu rufe ich im FormCraete folgendes auf:
Delphi-Quellcode:
  
  TCPClientSocket.Open;
  iMsgNr:=0;
  TCPClientSocket.Socket.SendText('Test:'+IntToStr(iMsgNr));
  inc(iMsgNr);
Diese Nachricht (iMsgNr=0) kommt nicht beim Server an.
Rufe ich später per Buttonklick SendText auf, empfängt der Server die Nachricht, dann natürlich mit einer högeren iMsgNr. Ich habe auch schon probiert, das SendText und das inc(iMsgNr) im FormCreate auszuklammern, dann wird per Buttonklick auch die iMsgNr 0 gesendet.

Wie kann ich jetzt diese Nachricht aber beim Start meines Programms die Nachricht verschicken.

ciao
Martin
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 10:56
Guck dir mal meine Unit ProtocolUtils an .. du findest sie hier im Board unter den Suchbegriffen "Protokoll Sockets".
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Quake

Registriert seit: 25. Aug 2003
222 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 16:43
Sorry, aber dein Thread bringt mich aber nicht weiter. Das Problem was ich habe ist ja nicht das interpretieren meiner Nachricht oder das eine Nachricht zerstückelt usw. ankommt, sondern die Nachricht die im FormCreate gesendet wird kommt gar nicht beim Server an. Alle Nachrichten, die ich später sende kommen korrekt beim Server an.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 17:17
Hmm, vielleicht liegt es daran das zu dem Zeitpunkt noch keine Nachrichtenschleife läuft. Hast du mal versucht in SendText rein zu steppen?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 18:49
Kannst du dir vorstellen, wie schnell deine Procedure da oben ausgeführt wird? Kannst du dir vllt. auch vorstellen das es etwas Zeit braucht um zu einem Namen eine IP zu ermitteln und ihn zu kontaktieren? Von daher: Wenn du Open aufrufst, dann kannst du nicht sofort lossenden, da die Verbindung erstmal aufgebaut werden muss. Wenn dieser Vorgang fertig ist oder fehlgeschlagen ist, dann wird dir mit einem Event Bescheid gegeben. Und wenn dir eine positive Antwort gegeben wird, dann kannst du deine Nachricht lossenden.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 18:53
@Muetze1: Ist die Open-Methode nicht blockierend?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#7

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 18:54
afair nicht.
  Mit Zitat antworten Zitat
Quake

Registriert seit: 25. Aug 2003
222 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: TClientSocket verschluckt eine Nachricht

  Alt 31. Mär 2007, 19:12
Danke, ich probier das senden mal im OnConnect.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz