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

Вниз

Обзор сетевого окружения...   Найти похожие ветки 

 
istok   (2007-09-13 13:04) [0]

есть вот такая штука для обзора сетевого окружения:


type

 PNetRes = ^TNetRes;
 TNetRes = record
   dwScope : Integer;
   dwType : Integer;
   dwDisplayType : Integer;
   dwUsage : Integer;
   LocalName : string;
   RemoteName : string;
   Comment : string;
   Provider : string;
 end;

 PnetResourceArr = ^TNetResource;

function GetContainerList(ListRoot:PNetResource):TList;
var
 TempRec : PNetRes;
 Buf : Pointer;
 Count,
 BufSize,
 Res : DWORD;
 lphEnum : THandle;
 p : PNetResourceArr;
 i : SmallInt;
 NetworkList : TList;
begin
 NetworkList := TList.Create;
 BufSize := 8192;
 GetMem(Buf, BufSize);
 Result:=nil;
 Count := $FFFFFFFF;

 Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK,
   0, ListRoot, lphEnum);
 try
   //if Res <> 0 then raise Exception(Res);
   Res := WNetEnumResource(lphEnum, Count, Buf, BufSize);
   if Res = ERROR_NO_MORE_ITEMS then Exit;//????? ?? ????????
   //if Res <> 0 then raise Exception(Res);
   P := PNetResourceArr(Buf);
   for i := 0 to Count - 1 do
   begin
     New(TempRec);
     TempRec^.dwScope := P^.dwScope;
     TempRec^.dwType := P^.dwType ;
     TempRec^.dwDisplayType := P^.dwDisplayType ;
     TempRec^.dwUsage := P^.dwUsage ;
     TempRec^.LocalName := StrPas(P^.lpLocalName);
     TempRec^.RemoteName := StrPas(P^.lpRemoteName);
     TempRec^.Comment := StrPas(P^.lpComment);
     TempRec^.Provider := StrPas(P^.lpProvider);
     NetworkList.Add(TempRec);
     Inc(P);
   end;
   Result:=NetWorkList;
 finally
   WNetCloseEnum(lphEnum);
   FreeMem(Buf);
 end;
end;


косяк в том, что при 100+ компах он показывает не все компы домена (точно не знаю сколько именно, но где-то на сотне обрубает).

может тут есть явный ляп или кто-то знает от чего такое бывает?


 
istok   (2007-09-13 13:06) [1]

может в BufSize  фишка...  ?
(мне сложно это проверить на деле и хочется подтверждения теории)



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
3-1200635835
Anatoly Podgoretsky
2008-01-18 08:57
2008.06.29
Несколько LEFT JOIN в Акцесс


2-1212256392
Wildyt
2008-05-31 21:53
2008.06.29
Дан файл, состоящий из чисел


15-1211164484
Slider007
2008-05-19 06:34
2008.06.29
С днем рождения ! 19 мая 2008 понедельник


3-1201027383
Ega23
2008-01-22 21:43
2008.06.29
ISQL в FireBird - передать скрипт и получить результат


2-1212019695
Johnnnn
2008-05-29 04:08
2008.06.29
Как отключить загрузку изображений в TWebBrowser?