Вниз
Скачать: 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.018 c
1-79816
turonix
2004-02-11 11:03
2004.02.25
Создание таймера на 48 часов


1-79777
Sesh
2004-02-11 20:33
2004.02.25
Form&Components


8-80026
Sniper--Max
2003-10-23 06:56
2004.02.25
Как нажать на кнопку под моей формой?


6-80050
smu
2003-12-22 10:10
2004.02.25
Как TNMSMTP связать с ProgressBar?


3-79633
Soi
2004-02-01 11:45
2004.02.25
Поиск и фильтрация данных в БД




   Наверх