Форум: "Сети";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];
ВнизСписок IP-адресов в сети Найти похожие ветки
← →
Kalishenko (2002-10-28 20:42) [0]Помогите!!! Нужно получить список всех IP-адресов и имен машин в локальной сети. (желательно с примером).
← →
izhalex (2002-10-29 12:13) [1]Лови пример поиска всех тачек в лс
Function FillNetLevel(xxx: PNetResource; list: TStrings) : Word;
Type
PNRArr = ^TNRArr;
TNRArr = array [0..59] of TNetResource;
Var
x: PNRArr;
tnr: TNetResource;
I : integer;
EntrReq,
SizeReq,
twx: Cardinal;
WSName: string;
begin
Result := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY,
0, xxx, twx);
If Result = ERROR_NO_NETWORK Then Exit;
if Result = NO_ERROR then
begin
New(x);
EntrReq := 1;
SizeReq := SizeOf(TNetResource)*59;
while (twx <> 0) and
(WNetEnumResource(twx, EntrReq, x, SizeReq) <> ERROR_NO_MORE_ITEMS) do
begin
For i := 0 To EntrReq - 1 do
begin
Move(x^[i], tnr, SizeOf(tnr));
case tnr.dwDisplayType of
RESOURCEDISPLAYTYPE_SERVER:
begin
if tnr.lpRemoteName <> "" then
WSName:= tnr.lpRemoteName
else WSName:= tnr.lpComment;
list.Add(Copy(WSName,3,Length(WSName)));
Application.ProcessMessages;
end;
else FillNetLevel(@tnr, list);
end;
end;
end;
Dispose(x);
WNetCloseEnum(twx);
end;
end;
вызов :
CheckListBox1.Items.Clear;
xxx := nil;
FillNetLevel(xxx, CheckListBox1.Items);
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c