Delphi 7 UDP empfangen
Hallo,
ich will überprüfen ob auf einem Port Traffic ist. Also empfange von einem Rechner auf meinem Daten. Will an sich nur anschauen ob welche ankommen. Was für Inhalt die Daten haben ist mir quasi egal... Habe hier einmal ein Wenig Quellcode - der natürlich nicht funktioniert...
Hallo,
ich will überprüfen ob auf einem Port Traffic ist. Also empfange von einem Rechner auf meinem Daten. Will an sich nur anschauen ob welche ankommen. Was für Inhalt die Daten haben ist mir quasi egal... Habe hier einmal ein Wenig Quellcode - der natürlich nicht funktioniert...
procedure TForm1.Timer1Timer(Sender: TObject);
var get : string;
begin
get := IdUDPClient1.ReceiveString(0);
Label1.Caption := get;
end;
Mit diesem hätte ich gerne erreicht, dass er mir einfach was er so bekommt ausgibt...
IdUDPClient1 hat folgende Eigenschaften:
Active = True
BroadcastEnabled = False
BufferSize = 8192
Host = -NICHTS-
Name = IdUDPClient1
Port = 41001 (eben diesen möchte ich kontrollieren)
ReceiveTimeout = -2
Tag = 0
Habe auch bei host schon meine eigene IP gehabt...
Bin für jede Hilfe dankbar...
Gruß
ich will überprüfen ob auf einem Port Traffic ist. Also empfange von einem Rechner auf meinem Daten. Will an sich nur anschauen ob welche ankommen. Was für Inhalt die Daten haben ist mir quasi egal... Habe hier einmal ein Wenig Quellcode - der natürlich nicht funktioniert...
Hallo,
ich will überprüfen ob auf einem Port Traffic ist. Also empfange von einem Rechner auf meinem Daten. Will an sich nur anschauen ob welche ankommen. Was für Inhalt die Daten haben ist mir quasi egal... Habe hier einmal ein Wenig Quellcode - der natürlich nicht funktioniert...
procedure TForm1.Timer1Timer(Sender: TObject);
var get : string;
begin
get := IdUDPClient1.ReceiveString(0);
Label1.Caption := get;
end;
Mit diesem hätte ich gerne erreicht, dass er mir einfach was er so bekommt ausgibt...
IdUDPClient1 hat folgende Eigenschaften:
Active = True
BroadcastEnabled = False
BufferSize = 8192
Host = -NICHTS-
Name = IdUDPClient1
Port = 41001 (eben diesen möchte ich kontrollieren)
ReceiveTimeout = -2
Tag = 0
Habe auch bei host schon meine eigene IP gehabt...
Bin für jede Hilfe dankbar...
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 137440
Url: https://administrator.de/contentid/137440
Ausgedruckt am: 05.11.2024 um 10:11 Uhr
4 Kommentare
Neuester Kommentar
Hi !
Nene min Jung, wie Du ja schon gemerkt hast funktioniert das so nicht!
Das Indy-Client Objekt kann eine UDP-Session nur direkt zu einem Server herstellen. Wie ich das verstanden habe, ist das was Du machen willst sniffen und da sehe ich keinen Sinn darin, das Rad nochmal neu zu erfinden zu wollen, denn solche Tools gibt es schon...
mrtux
Nene min Jung, wie Du ja schon gemerkt hast funktioniert das so nicht!
Das Indy-Client Objekt kann eine UDP-Session nur direkt zu einem Server herstellen. Wie ich das verstanden habe, ist das was Du machen willst sniffen und da sehe ich keinen Sinn darin, das Rad nochmal neu zu erfinden zu wollen, denn solche Tools gibt es schon...
mrtux
Hi !
Also nochmal ganz von vorn, was genau möchtest Du machen? Willst Du einen Server überwachen, ob er online ist oder möchtest Du ALLE UPD-Pakete die an den Server gehen mitloggen?
Das ist gar nicht nötig, denn es gibt eine Demo von den Entwicklern der Lib. Es zeigt eine einfache Serversession für das Indy TCP-Client Objekt, welches Du in der UDP-Variante deinem Quellbeispiel verwendet hast. Das Demo ist sicherlich auch auf das UDP-Objekt (nur der Richtigkeit halber: Bei Delphi spricht man ja von (VCL-) Komponenten) anwendbar. Es ist aber nur eine Konsolen App, die Du aber ganz einfach fürs GUI umschreiben kannst bzw. daran kannst Du sehen wie es funktioniert und Du es in deiner App einsetzen kannst.
Und natürlich gibt es noch andere Netzwerk-LIBs für Delphi aber da möchte ich besser auf eine Suchmaschine verweisen, da die dann allesamt andere Möglichkeiten bieten und die Methoden und Funktionen anders aufgebaut sind.
Ich habe dir mal ein paar Links mit mehr Input:
1. Die Indy KB
2. Die Demo Site: Das drittletzte in der Liste ist das besagte TCP-Client Demo.
3. Ein Forum
4. Noch ein Forum
Ich hoffe ich bekomme kein aufs Dach, wenn ich hier andere Foren verlinke, es sind aber Foren speziell für Delphi Entwickler.
mrtux
Zitat von @Daubes:
naja ich will ja damit dann schon was anfangen - aber an sich reicht mir ein "true and false". hast du einen kleinen
naja ich will ja damit dann schon was anfangen - aber an sich reicht mir ein "true and false". hast du einen kleinen
Also nochmal ganz von vorn, was genau möchtest Du machen? Willst Du einen Server überwachen, ob er online ist oder möchtest Du ALLE UPD-Pakete die an den Server gehen mitloggen?
quellcodeansatz?
Das ist gar nicht nötig, denn es gibt eine Demo von den Entwicklern der Lib. Es zeigt eine einfache Serversession für das Indy TCP-Client Objekt, welches Du in der UDP-Variante deinem Quellbeispiel verwendet hast. Das Demo ist sicherlich auch auf das UDP-Objekt (nur der Richtigkeit halber: Bei Delphi spricht man ja von (VCL-) Komponenten) anwendbar. Es ist aber nur eine Konsolen App, die Du aber ganz einfach fürs GUI umschreiben kannst bzw. daran kannst Du sehen wie es funktioniert und Du es in deiner App einsetzen kannst.
Und natürlich gibt es noch andere Netzwerk-LIBs für Delphi aber da möchte ich besser auf eine Suchmaschine verweisen, da die dann allesamt andere Möglichkeiten bieten und die Methoden und Funktionen anders aufgebaut sind.
Ich habe dir mal ein paar Links mit mehr Input:
1. Die Indy KB
2. Die Demo Site: Das drittletzte in der Liste ist das besagte TCP-Client Demo.
3. Ein Forum
4. Noch ein Forum
Ich hoffe ich bekomme kein aufs Dach, wenn ich hier andere Foren verlinke, es sind aber Foren speziell für Delphi Entwickler.
mrtux