AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi [UDP] Nachricht an alle Teilnehmer senden (Zeitverzögerung)
Thema durchsuchen
Ansicht
Themen-Optionen

[UDP] Nachricht an alle Teilnehmer senden (Zeitverzögerung)

Ein Thema von Yheeky · begonnen am 3. Mär 2007 · letzter Beitrag vom 5. Mär 2007
Antwort Antwort
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#1

[UDP] Nachricht an alle Teilnehmer senden (Zeitverzögerung)

  Alt 3. Mär 2007, 00:08
Hi,

ich weiss, dass ich den ein oder anderen nerve, aber ich verstehe die Thematik einfach noch nicht, weil ich´s noch nie richtig angewendet habe. Ich denke es geht wieder um mein Lieblingsthema Threads.
Ich will bei Button1Click eine Info an alle Teilnehmer schicken, deren IP-Adressen in der ListView1 stehen. Bisher geht das zwar, aber es dauert ca. 5 Sekunden, ehe das Programm wieder reagiert. Die Funktion sieht so aus:

Delphi-Quellcode:
for User := 0 to frmMain.ListView1.Items.Count - 1 do
begin
UDPSockUtil1.RemoteHost := frmMain.ListView1.Items[User].SubItems[1];
UDPSockUtil1.SendText(Username + '#' + IntToStr(User));
end;
Wie mache ich das jetzt richtig? Das Thread Tutorial von Luckie hilft mir da irgendwie nicht weiter...vielleicht kann´s mir einer nochmal auf mein Thema zugeschnitten zeigen und erklären. Ich wäre euch sehr dankbar...so langsam muss ich das Thema doch mal kapieren

Danke schonmal!
  Mit Zitat antworten Zitat
Benutzerbild von yörsch
yörsch

Registriert seit: 10. Jan 2007
Ort: Lampertheim
206 Beiträge
 
Delphi XE2 Architect
 
#2

Re: [UDP] Nachricht an alle Teilnehmer senden (Zeitverzögeru

  Alt 3. Mär 2007, 00:27
Moin Moin,
hast du schon mit Threads gearbeitet???
versuchs erst mal mit was gannz einfachem, wie ein Label das über ein thread verändert wird!
das Tutorial von Luckie ist da mehr als ausreichend...
wenn das geht, dann vielleicht mal ne´datei in einem thread laden...
Aber die Arbeit des lernens kann dir keiner abnehmen...
Jörg
have FUN
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#3

Re: [UDP] Nachricht an alle Teilnehmer senden (Zeitverzögeru

  Alt 3. Mär 2007, 10:58
Ich weiss ja nicht mal wie einer korrekt erstellt und ausgeführt wird und mit dem Tutorial komme ich irgendwie nicht klar
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#4

Re: [UDP] Nachricht an alle Teilnehmer senden (Zeitverzögeru

  Alt 3. Mär 2007, 19:39
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?
  Mit Zitat antworten Zitat
Yheeky

Registriert seit: 7. Jun 2002
1.339 Beiträge
 
#5

Re: [UDP] Nachricht an alle Teilnehmer senden (Zeitverzögeru

  Alt 5. Mär 2007, 13:41
Leider habe ich es immer noch nicht hinbekommen.
Kann vielleicht jemand mal über den Code gucken und mir sagen, wo der Fehler liegt? Wäre echt nett, danke!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz