Hallo!
Ich poste hier jetzt mal mein OnExecute Ereigniss und würde gern wissen ob das so funktioniert:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32:
| procedure TForm1.TCPServerExecute(AThread: TIdPeerThread); var NewCommBlock, CommBlock: TCommBlock; ListItem: TListItem; begin AThread.Connection.ReadBuffer(CommBlock, sizeof(CommBlock));
if (Commblock.Command = 'BROADCAST') and (Hostliste.IndexOf(CommBlock.MyComputerName) = -1) then begin readbox.Lines.Add('Rechner ' + CommBlock.MyComputerName + ' fordert Rechnerinfo an!');
NewCommBlock.Command := 'INFO'; NewCommBlock.MyUserName := sUserName; NewCommBlock.MyComputerName := sHostName;
AThread.Connection.WriteBuffer(NewCommBlock, sizeof(NewCommBlock)); readbox.Lines.Add('Daten wurden an' + CommBlock.MyComputerName + ' gesendet!'); end;
if CommBlock.Command = 'INFOS' then begin readbox.Lines.Add('Empfange Rechnerinfo von ' + CommBlock.MyComputerName); HostListe.Add(CommBlock.MyComputerName); ListItem := RemoteListe.Items.Add; ListItem.Caption := CommBlock.MyComputerName; ListItem.SubItems.Add(CommBlock.MyUserName); readbox.Lines.Add('Daten von Rechner ' + CommBlock.MyComputerName + ' wurden hinzugefügt'); end;
end; |
Wenn jetzt mehrer Rechner mit dem Server verbinden, kann dann die Remoteliste (TListView) noch alles korrekt eintragen? Bei mir gibts nämlich grosse Probleme! Zum Beispiel wird bei einigen gar nichts eingetragen oder manche fehlen...
Woran kann das liegen?
Ich hoffe der Code des OnExecute reicht aus, sonst poste ich hier noch mehr wenns sein muss
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.