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

Как узнать маску подсети?   Найти похожие ветки 

 
FireMan_Alexey ©   (2003-12-19 09:28) [0]

Ув. мастера! Не могли бы вы поделиться как можно достать маску подсети программно?
Если можно с исходником или ссылкой на статью!
Заранее благодарен!


 
Verg ©   (2003-12-19 12:16) [1]

IpHlpApi::GetIpAddrTable

Поищи на MSDN-е


 
Fay   (2003-12-19 13:12) [2]

type
MIB_IPADDRROW = record
dwAddr : DWORD;
dwIndex : DWORD;
dwMask : DWORD;
dwBCastAddr : DWORD;
dwReasmSize : DWORD;
unused1 : Word;
unused2 : Word;
end;
PMIB_IPADDRTABLE = ^MIB_IPADDRTABLE;
MIB_IPADDRTABLE = record
dwNumEntries : DWORD;
table : array[0..0] of MIB_IPADDRROW;
end;

function GetIpAddrTable(pIpAddrTable : PMIB_IPADDRTABLE; var pdwSize : ULONG; bOrder : BOOL) : DWORD; stdcall; external "iphlpapi.dll" name "GetIpAddrTable";

procedure TForm1.Button1Click(Sender : TObject);
type
T4Bytes = array[0..3] of Byte;
P4Bytes = ^T4Bytes;
var
p : PMIB_IPADDRTABLE;
i, n : Cardinal;
j : P4Bytes;
begin
n := 0;
GetIpAddrTable(nil, n, True);
GetMem(p, n);
GetIpAddrTable(p, n, True);
n := p.dwNumEntries;
for i := 0 to n - 1 do
begin
j := @p^.table[i].dwMask;
ShowMessage(Format("%d.%d.%d.%d", [j^[0], j^[1], j^[2], j^[3]]));
end;
FreeMem(p);
end;



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

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



Память: 0.45 MB
Время: 0.034 c
11-79688
=Sniper=
2003-06-07 00:24
2004.02.25
Format( %0.0f ,[dwCool]);


14-80106
Clift
2004-02-01 00:36
2004.02.25
Разминка для ума


3-79653
OlegM
2004-01-30 22:25
2004.02.25
Вычислить максимально значение поля ?


14-80251
krast
2004-02-04 17:12
2004.02.25
Динамическое создание dialup соединение


14-80152
dmk
2004-02-01 00:34
2004.02.25
HELP!!!




   Наверх