Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.10;
Скачать: CL | DM;

Вниз

Сетевое окружение   Найти похожие ветки 

 
Димыч ©   (2006-11-23 13:28) [0]

Неужели нет способа получить список компьютеров в локальной сети не производя длительных поисков (таких как в программе NetScan)? Есть ли способ получить этот список от Windows, она же выводит его гораздо быстрее, может она его гдето хранит?


 
Elen ©   (2006-11-23 13:38) [1]

Почему нет? есть :

function FindAllComputers(Workgroup: string;Divider:string=#13#10):string;

var
 EnumHandle: THandle;
 WorkgroupRS: TNetResource;
 Buf: array [1..500] of TNetResource;
 BufSize: cardinal;
 Entries: cardinal;
 Res: Integer;
 Computer:string[255]; { array [1..500] of  string[25];}

 ComputerCount: Integer;

begin
 ComputerCount := 0;
 Workgroup := Workgroup + #0;
 FillChar(WorkgroupRS, SizeOf(WorkgroupRS) , 0);
 with WorkgroupRS do
 begin
   dwScope := 2;
   dwType := 3;
   dwDisplayType := 1;
   dwUsage := 2;
   lpRemoteName := @Workgroup[1];
 end;

 WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, @WorkgroupRS, EnumHandle);

 repeat
   Entries := 1;
   BufSize := SizeOf(Buf);

   Res := WNetEnumResource(EnumHandle, Entries, @Buf, BufSize);
   if (Res = NO_ERROR) and (Entries = 1) then
   begin
     Inc( ComputerCount );
     Computer{[ ComputerCount ]} := StrPas(Buf[1].lpRemoteName);
     result:=result+Divider+(Computer{[ ComputerCount ]});
   end;
 until
   (Entries <> 1) or (Res <> NO_ERROR);

 WNetCloseEnum( EnumHandle );
end;
//**************************************************************************


 
Димыч ©   (2006-11-24 09:28) [2]

В работе код еще не опробовал, но все равно большое спасибо за ответ поделу (без воды) :)


 
Elen ©   (2006-11-24 09:32) [3]


> Димыч

В догонку : ListBox.items.text:=FindAllComputers(...



Страницы: 1 вся ветка

Текущий архив: 2006.12.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
15-1163547102
nemo2
2006-11-15 02:31
2006.12.10
a dot b = |a||b|cos(a,b)= Ax*Bx + Ay*By + Az*Bz Почему ?


2-1164311639
Super135
2006-11-23 22:53
2006.12.10
Как работать с рабочим столом в Windows98


3-1159946116
Монг
2006-10-04 11:15
2006.12.10
Проблема с выполнением функции


3-1159947583
dsb
2006-10-04 11:39
2006.12.10
Профессионалы ХНЛП!!!!!!


15-1163802090
lookin
2006-11-18 01:21
2006.12.10
Реформа РАН и прочее