Einzelnen Beitrag anzeigen

Puddy

Registriert seit: 2. Jun 2007
18 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Bestimmte Geräte im Netzwerk suchen

  Alt 14. Nov 2016, 19:59
Danke. Genau das hat mir gefehlt. Funktioniert, ich werde es aber noch länger testen müssen.

Für die Nachwelt:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
  Client : TIdUDPClient;
  lenUDP : integer;
  startTime : Cardinal;
begin
  Memo1.Lines.Add('start');

  Client := TIdUDPClient.Create(nil);
  try
    Client.Host := '192.168.178.255';
    Client.Port := 22004;
    Client.BroadcastEnabled := True;
    Client.ReceiveTimeout := 3000;

    Client.Send('PING');
    startTime := GetTickCount;

    SetLength(myBuf, Client.BufferSize);

    while (GetTickCount - startTime) < 3500 do begin
      lenUDP := Client.ReceiveBuffer(myBuf, 10);

      if lenUDP > 0 then begin
        Memo1.Lines.Add(inttostr(lenUDP));
        SetLength(myBuf, lenUDP);
        Memo1.Lines.Add(bytestostring(mybuf));
      end;
    end;
  finally
    Memo1.Lines.Add('end');
    Client.Free;
  end;
end;
  Mit Zitat antworten Zitat