AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Suche nach Computern & Arbeitsgruppen in Thread auslagern?
Thema durchsuchen
Ansicht
Themen-Optionen

Suche nach Computern & Arbeitsgruppen in Thread auslagern?

Ein Thema von Mazel · begonnen am 14. Jun 2007 · letzter Beitrag vom 14. Jun 2007
Antwort Antwort
Benutzerbild von Mazel
Mazel

Registriert seit: 11. Nov 2005
Ort: Leipzig
831 Beiträge
 
#1

Suche nach Computern & Arbeitsgruppen in Thread auslager

  Alt 14. Jun 2007, 13:39
Hallo,

mit folgendem Code von swissdelphicenter lese ich sowohl die Computer als auch Arbeitsgruppen in einem Netzwer aus: ...Alle Computer im Netzwerk ermitteln?

Der Code beschreibt zwar nur wie man alle Computer auflistet aber mit RESOURCEDISPLAYTYPE_DOMAIN statt RESOURCEDISPLAYTYPE_SERVER erhält man auch die Arbeitsgruppen.
Soweit funktioniert auch alles, aber auf manchen Rechnern dauert die Abfrage ziemlich lange so dass sich das Programm aufhängt, wenn man nicht wartet.

Nun stellt sich die Frage, wie ich diese Aktion in ein Thread auslagern muss, damit es funktioniert.

Ich habe auch schon überlegt Application.ProcessMessages zu verwenden, dann ist da aber wieder die Frage, an welcher Stelle ich das einsetzen muss.

Hat jemand da einen Rat für mich?

Gruß
Mazel
Marcel Jänicke
www.mj-software.net
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Suche nach Computern & Arbeitsgruppen in Thread ausl

  Alt 14. Jun 2007, 17:00
Hallo Marcel,

keine Ahnung was genau dein Problem ist. Der Domain Browser braucht eine Weile bis er alle Einträge zurückgemeldet bekommen hat. Das ist auch der Fall, wenn du mit dem Windows Explorer suchst. Die Anzeige kann allerdings drastisch beschleunigt werden, wenn du beim Aufruf die visuelle Aktualisierung abschaltest:

Delphi-Quellcode:
begin
  ListBox1.Items.BeginUpdate;
  ScanNetworkResources(RESOURCETYPE_DISK, RESOURCEDISPLAYTYPE_SERVER, ListBox1.Items);
  ListBox1.Items.EndUpdate;
end;
Alternativ kannst du die Arbeitsgruppen und Computer auch mittels SHBrowseForFolder() suchen.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Mazel
Mazel

Registriert seit: 11. Nov 2005
Ort: Leipzig
831 Beiträge
 
#3

Re: Suche nach Computern & Arbeitsgruppen in Thread ausl

  Alt 14. Jun 2007, 18:28
Die visuelle Aktualisierung ausschalten ist sicher eine gute Idee, leider bei mir so nicht anwendbar, konntest du ja auch nicht wissen . Die visuelle Aktualisierung ist im Prinzip schon abgeschalten, da ich die Daten in eine Stringlist lade und nicht direkt in eine ListBox jedes einzelne Item Adde. Meine Daten werden erst später in einer Schleife ausgegeben.

Bei mir geht es ja sehr schnell, hin und wieder dauert es mal 1 bis 2 Sekunden aber nicht mehr als 2 Minuten wie auf anderen Rechnern, das ist ja das was mich verwundert.

Gruß
Mazel
Marcel Jänicke
www.mj-software.net
  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 05:41 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