hi
ich versuche gerade mit UDP.Broadcast andere Computer, welche das Programm xy geöffnet haben über LAN ausfindig zu machen nur leider klappt es nicht wirklich.
hier der Code
Delphi-Quellcode:
procedure TForm1.aktualClick(Sender: TObject);
//die Aufrufung zum Aktualisieren
begin
IdUDPClient1.Broadcast(idIPWatch1.CurrentIP, 10029);
end;
procedure TForm1.userverUDPRead(Sender: TObject; AData: TBytes;
//Port 10029
ABinding: TIdSocketHandle);
var
ip,
name:
string;
begin
ip := Copy(BytesToString(Adata), 0, length(Adata));
with IdUDPClient1
do
begin
Host :=
ip;
Active := true;
Send(
name, 10030, Form2.pcname.Text);
Send(
ip, 10030, IdIPWatch1.CurrentIP);
Active := false;
end;
end;
procedure TForm1.userverUDPRead(Sender: TObject; AData: TBytes;
//Port 10030
ABinding: TIdSocketHandle);
begin
namen.Items.Add.Caption := Copy(BytesToString(Adata), 0, length(Adata));
namen.Items.Add.Subitems.Add(Copy(BytesToString(Adata), 0, length(Adata)));
end;
der Server mit Port 10030 ist bei Broadcast auf "false"
client1.port= 10030, ebenfalls auf broadcast "false"
IPwatch1
der Server mit Port 10029 ist bei Broadcast auf "true"
client2.port= 10029, ebenfalls auf broadcast "true"
IPwatch2
alles auf Aktive= true
er sollte namen und
Ip in die Listview(namen) eintragen
habe den Code in der
DP gefunden, und bei der Person hat es auch funktioniert, nur halt bei mir nicht.
Mein Hinterkopf meint es fehlt etwas, ich weiß aber nicht was.
wäre dankbar für Hilfe