Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2008.06.29;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.045 c
2-1212241497
9899100
2008-05-31 17:44
2008.06.29
ресурсы


2-1212065961
Nick
2008-05-29 16:59
2008.06.29
Как проверить есть ли встроке пробел


15-1211181236
Ega23
2008-05-19 11:13
2008.06.29
Строки из resource-файла или что-то другое?


15-1210928266
ekto
2008-05-16 12:57
2008.06.29
Посоветуйте программу для создания 24-битных ресурсов


2-1212329213
BasUrban
2008-06-01 18:06
2008.06.29
Поверх всего





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский