Ändere ich den Queryport aber auf den Spielport zB, dann hängts immernoch.
In der Button2Click fehlt die Abfrage ob Connected.
und in der GetInfo
Delphi-Quellcode:
if (form4.udp1.Connected) then
form4.Udp1.SendBuf(request, SizeOf(TInfoRequest));
form4.Udp1.ReceiveBuf(buffer, SizeOf(buffer));
i := 0;
fehlt das begin-end. So wie Du es hier machst wird nur der Versuch unterbunden SendBuf auszuführen.
Aber die Zeilen danach werden immer ausgeführt, egal ob Connected oder nicht.
Programmieren ist die Kunst aus Nullen und Einsen etwas sinnvollen zu gestalten.
Der bessere Künstler ist allerdings der Anwender, denn dieser findet Fehler, welche sich der Programmierer nicht vorstellen konnte.