Delphi-Quellcode:
type
TThread_SendStatus = class(TThread)
private
ThreadID : Integer;
User : SmallInt;
protected
procedure Execute; override;
end;
procedure GetAllUsersStatus;
var
User: Integer;
SendStatus : TThread_SendStatus;
ThreadID: Cardinal;
begin
frmMain.UDPSockUtil1.Broadcast := False;
for User := 0 to frmMain.Users.Items.Count - 1 do
begin
SendStatus := TThread_SendStatus.Create(False);
SendStatus.ThreadID := 0;
ThreadID := SendStatus.ThreadID;
SendStatus.User := User;
SendStatus.Execute;
Inc(SendStatus.ThreadID);
end;
end;
procedure TThread_SendStatus.Execute;
begin
CoInitialize(nil);
try
frmMain.UDPSockUtil1.RemoteHost := frmMain.Users.Items[User].SubItems[4];
frmMain.UdpSockUtil1.SendText('#AskForStatus#' + IntToStr(frmMain.StatusComboBox.ImageIndex) + '##' + LowerCase(frmMain.OwnComputername));
finally
CoUninitialize;
end;
end;
So, hier mal der Code. Das Programm bleibt immer noch beim Verbinden "hängen", weil an mehrere Hosts ein SendText übermittelt werden soll. Erst wenn er fertig ist, taut das Programm wieder auf. Hab ich mit Hilfe es Tutorials gemacht, aber ohne Erfolg. Kann mir jemand helfen?