A resposta foi postada estes dias por Rodrigo Marcinhuk [EMAIL PROTECTED]

Segue abaixo a rotina q eu tb testei....


Isso procura e lista os computadores em listboxes.
  
  unit Procura_Computadores;
  interface
  uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;
  type
  TForm1 = class(TForm)
    Button1: TButton;
    ListBox1: TListBox;
    Label1: TLabel;
    ListBox2: TListBox;
    Label2: TLabel;
    ListBox3: TListBox;
    Label3: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
  var
  Form1: TForm1;
  implementation
  {$R *.DFM}
  procedure FindComputers(Workgroup: string; aResList: TStrings); var
  eNumHandle  : THandle;
  WorkgroupRS : TNetResource;
  Buf         : array[1..500] of TNetResource;
  BufSize     : DWORD;
  Entries     : DWORD;
  Result       : integer;
begin
  if not Assigned(aResList) then
    Exit;
    aResList.Clear;
    WorkGroup := Workgroup + #0;
  FillChar(WorkGroupRS, SizeOf(WorkGroupRS), 0);
  with WorkgroupRS do
  begin
    dwScope := 2;
    dwType := 3;
    dwDisplayType := 1;
    dwUsage := 1;
    lpRemoteName := @Workgroup[1];
  end;
  WNetOpenEnum(Resource_GlobalNet, ResourceType_Any, 0, @WorkgroupRS, ENumHandle);
    repeat
    Entries := 1;
    BufSize := SizeOf(Buf);
      Result := WNetENumResource(ENumHandle, Entries, @Buf, BufSize);
      if (result = NO_Error) and (Entries = 1) then
      aResList.Add(StrPas(Buf[1].lpRemoteName));
  until (Entries <> 1) or (Result <> NO_Error);
    WNetCloseENum(ENumHandle);
end;
  
 
procedure TForm1.Button1Click(Sender: TObject); begin
     FindComputers('Dominio1',ListBox1.Items);
   FindComputers('Dminio2',ListBox2.Items);
   FindComputers('Workgroup1',ListBox3.Items);
end;
  end.


D jeito q foi postada na lista.



Eduardo Castro Alves
Analista de Sistemas

-----Original Message-----
From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of Jonatã Castelo Branco
Sent: quinta-feira, 18 de maio de 2006 15:19
To: Grupo Delphi
Subject: [delphi-br] listar computadores ligados na rede

alguém sabe como fazer isso? Eu quero apenas os nomes dos computadores e não as pastas que estão compartilhadas. Por isso não posso usar o ShellTreeView. Pode ser uma lista em ListBox. Obrigado.
  
  Jonatã

           
---------------------------------
Abra sua conta no Yahoo! Mail - 1GB de espaço, alertas de e-mail no celular e anti-spam realmente eficaz.

[As partes desta mensagem que não continham texto foram removidas]



--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



Links do Yahoo! Grupos










--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]



Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a