Форум: "Сети";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
ВнизКак узнать маску подсети? Найти похожие ветки
← →
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 вся ветка
Форум: "Сети";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.033 c