Вниз
Скачать: CL | DM;

Список компьютеров в лок. сети   Найти похожие ветки 

 
Stanislav ©   (2005-10-03 16:33) [0]

Подскажите пожалуйста как получить список всех компьютеров работающих в локальной сети ?


 
alexbou   (2005-10-03 18:13) [1]

function TForm1.EnumNetRes(lpnr: PNetResource): Boolean;
type
 TNetResourceArray = array [0..65535] of TNetResource;
 PNRA = ^TNetResourceArray;
var
 dwResult, dwResultEnum: DWORD;
 hEnum: THandle;
 cbBuffer: DWORD;
 cEntries: DWORD;
 i: DWORD;
 lpnrLocal: PNRA;
begin
 cbBuffer := 16384;
 cEntries := DWORD(-1);

 dwResult := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY,
     0, lpnr, hEnum);

 if (dwResult <> NO_ERROR) then begin
//    ShowMessage("WNetEnumOpen error");
   Result := false;
   Exit;
 end;

 lpnrLocal := Pointer(GlobalAlloc(GPTR, cbBuffer));

 repeat
   // init buffer
   ZeroMemory(lpnrLocal, cbBuffer);

   // call WNetEnumResource
   dwResultEnum := WNetEnumResource(hEnum, cEntries, lpnrLocal, cbBuffer);

   // if success loop
   if dwResultEnum = NO_ERROR then
     for i := 0 to cEntries - 1 do begin
       Memo1.Lines.Add(lpnrLocal[i].lpRemoteName);
       Application.ProcessMessages;
       if not FSearch then break;
       if lpnrLocal[i].dwUsage and RESOURCEUSAGE_CONTAINER = RESOURCEUSAGE_CONTAINER then
         EnumNetRes(@lpnrLocal[i]);
     end
   else if dwResultEnum <> ERROR_NO_MORE_ITEMS then begin
//      ShowMessage("WNetEnumResource error");
     Result := false;
     Exit;
   end;

 until FSearch and not (dwResultEnum <> ERROR_NO_MORE_ITEMS);

 dwResult := WNetCloseEnum(hEnum);

 GlobalFree(Cardinal(lpnrLocal));

 if dwResult <> NO_ERROR then begin
//    ShowMessage("WNetCloseEnum error");
   Result := false;
   Exit
 end;

 Result := true;
end;


 
alexbou   (2005-10-03 18:14) [2]

Вызов - EnumNetRes(nil), так как функция рекурсивная

Выдает верхние домены и хосты для всех сетевых служб


 
Vetalich ©   (2005-10-18 23:48) [3]

А не подскажите как етим пользоваться...
очень надо...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.03 c
9-1124420133
anton_321
2005-08-19 06:55
2006.01.29
у кого есть скаченный DirectX9 SDK?


9-1121634452
LexaDup
2005-07-18 01:07
2006.01.29
Линия видимости в GLSCene


4-1128023725
Руслан
2005-09-29 23:55
2006.01.29
Как в Win98 получить адреса COM и LPT портов


15-1135972937
версия для печати
2005-12-30 23:02
2006.01.29
События года


4-1132163658
Хинт
2005-11-16 20:54
2006.01.29
DLL, LoadLibrary и ReadProcessMemory




   Наверх