![]() |
UDP Socket OnReceive
Huhu!
Wenn ich mit einem Timer alle 5 Sekunden ein Packet Sende und es dann per UDPSocket.Receiveln(); an OnReceive weiterleite funzt alles wunderbar. Wenn ich nun aber bei OnCreate von Form1 auch versuche ein Packet zu senden kommt nichts bei OnReceive. Das Packet wird aber gesendet und ich bekomme auch eine Antwort.. Habs mir mit nem Caputre Prog angeguckt. Hab mir gedacht, dass es bei OnCreate vlt. zu früh ist. Hab dann ein paar andere Prozeduren versucht aber auch ohne Erfolg. Kann mir jemand weiterhelfen? Edit: Auch wenn ich den Timer auf 10 ms stelle funktioniert es wunderbar. Nur wenn ich es ohne Timer machen will springt er immernoch nicht in OnReceive rein obwohl genau das gleiche ausgeführt wird. Gruß, Coke |
Re: UDP Socket OnReceive
Zitat:
|
Re: UDP Socket OnReceive
Hoi!
Ist keine Schleife. Ich möchte einfach schon ein Ergebnis haben, wenn sich das Programm öffnet und nicht erst nach 5 Sekunden wenn der Timer das erste mal Aktiv wird. Der Code ist der gleiche:
Delphi-Quellcode:
Das gleiche steht auch im Timer. Wie gesagt.. Ich möchte bei Programmstart direkt ein Ergebnis anzeigen können. Danach soll es alle 5 Seks durch den Timer aktualisiert werden, was auch funzt.
begin
UDPSocket.Sendln(#$00#$02...); UDPSocket.Receiveln(); end; Gruß, Coke |
Re: UDP Socket OnReceive
Wieviel Nanosekunden Zeit gibst du ihm denn zwischen den beiden Befehlen, wenn sie nacheinander aufgerufen werden? Was meinste?
Das es im Timer funktioniert hängt wohl eher damit zusammen, dass du mit dem erneuten Timeraufruf das Ergebnis der letzten Anfrage einlesen kannst. Er wird bestimmt nicht sofort das Ergebnis lesen können, was du gerade ein paar Millisekunden vorher angefragt hattest... Lange Rede, kurzer Sinn: gib ihm Zeit auf eine Antwort zu warten... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:46 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