Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Netzwerkliste mit Arbeitsgruppen auflisten (https://www.delphipraxis.net/60045-netzwerkliste-mit-arbeitsgruppen-auflisten.html)

andimx 2. Jan 2006 11:02


Netzwerkliste mit Arbeitsgruppen auflisten
 
Hallo,

Erstmal: Fröhliches neues Jahr.

Ich hab mich jetzt schon todgesucht und ich find einfach nix.

Wie kann man die einzelnen Arbeitsgruppen im Netzwerk auflisten lassen und dann jeweils die Liste von Computern dazu?

Gruss,

-Andi

Orbmu2k 2. Jan 2006 12:16

Re: Netzwerkliste mit Arbeitsgruppen auflisten
 
Falls du die JVCL installiert hast vieleicht hilft dir "JvComputerNameDialog" unter "JvDialogs" schon weiter ?

andimx 2. Jan 2006 13:00

Re: Netzwerkliste mit Arbeitsgruppen auflisten
 
Ja der Dialog ist nicht das Problem. Ich will das in eine eigene TreeView reinbauen um eine Art Netzwerk Browser darzustellen, mit dem der User dann Rechner auswählen kann.

Luckie 2. Jan 2006 14:39

Re: Netzwerkliste mit Arbeitsgruppen auflisten
 
Meinst du so was:
Delphi-Quellcode:
uses
  ShlObj, ActiveX;

function FindComputer(hWnd: THandle; sPrompt: string; csidl: word; var sComputer: string): boolean;
const
  BIF_NEWDIALOGSTYLE    = $0040;
  BIF_USENEWUI          = BIF_NEWDIALOGSTYLE or BIF_EDITBOX;
  BIF_BROWSEINCLUDEURLS = $0080;
  BIF_UAHINT            = $0100;
  BIF_NONEWFOLDERBUTTON = $0200;
  BIF_NOTRANSLATETARGETS = $0400;
  BIF_SHAREABLE         = $8000;

  BFFM_IUNKNOWN         = 5;
  BFFM_SETOKTEXT        = WM_USER + 105; // Unicode only
  BFFM_SETEXPANDED      = WM_USER + 106; // Unicode only
var
  bi                    : TBrowseInfo;
  ca                    : array[0..MAX_PATH] of char;
  pidl, pidlSelected    : PItemIDList;
  m                     : IMalloc;
begin
  if Failed(SHGetSpecialFolderLocation(hWnd, CSIDL_NETWORK, pidl)) then
  begin
    result := False;
    exit;
  end;
  try
    FillChar(bi, SizeOf(bi), 0);
    with bi do begin
      hwndOwner := hWnd;
      pidlRoot := pidl;
      pszDisplayName := ca;
      lpszTitle := PChar(sPrompt);
      ulFlags := BIF_BROWSEFORCOMPUTER;
    end;
    pidlSelected := SHBrowseForFolder(bi);
    Result := Assigned(pidlSelected);
    if Result then
      sComputer := '\\' + string(ca);
  finally
    if Succeeded(SHGetMalloc(m)) then
      m.Free(pidl);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  Computer: String;
begin
  FindComputer(Handle, 'Wählen sie einen Computer', 0, Computer);
end;

andimx 2. Jan 2006 14:47

Re: Netzwerkliste mit Arbeitsgruppen auflisten
 
Ja genau sowas soll das am Ende ungefähr werden.

Ich brauch aber genau diese Liste aus diesem Dialog in meinem eigenen TreeView. Das soll ein neuer Dialog werden, um OPC Server ausfindig zu machen.

andimx 3. Jan 2006 07:31

Re: Netzwerkliste mit Arbeitsgruppen auflisten
 
Keiner ne Ahnung ?!


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz