妖哥在吗,上次获取电脑IP地址的子网掩码的程序中如何筛选出哪一个是有线网络的
妖哥在吗,上次获取电脑IP地址的子网掩码的程序中怎么筛选出哪一个是有线网络的.
附上次你给的代码.
现在可以得到三组IP .
1. 127.0.0.0
2. 192.168.1.123
3. 192.168.0.233
其中, 2 是有线网络的IP地址,3是无线网络的IP地址.
我怎么判断哪一个是有线网络的地址.
------解决方案--------------------
好事做到底,简单代码:
附上次你给的代码.
#include <tchar.h>
#include <iphlpapi.h>
#include <stdio.h>
#pragma link "iphlpapi.lib"
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PMIB_IPADDRTABLE pIPTable = NULL;
DWORD dwSize = 0;
::GetIpAddrTable(pIPTable, &dwSize, TRUE);
pIPTable = (PMIB_IPADDRTABLE)::GlobalAlloc(GPTR, dwSize);
::GetIpAddrTable(pIPTable, &dwSize, TRUE);
TCHAR szIPAddr[17], szSubMask[17];
for (DWORD i=0; i < pIPTable->dwNumEntries; i++)
{
// IP
memset(szIPAddr, 0x0, sizeof(szIPAddr));
_stprintf(szIPAddr, TEXT("%d.%d.%d.%d"),
LOWORD(pIPTable->table[i].dwAddr) & 0x00FF,
LOWORD(pIPTable->table[i].dwAddr) >> 8,
HIWORD(pIPTable->table[i].dwAddr) & 0x00FF,
HIWORD(pIPTable->table[i].dwAddr) >> 8);
// Subnet Mask
memset(szSubMask, 0x0, sizeof(szSubMask));
_stprintf(szSubMask, TEXT("%d.%d.%d.%d"),
LOWORD(pIPTable->table[i].dwMask) & 0x00FF,
LOWORD(pIPTable->table[i].dwMask) >> 8,
HIWORD(pIPTable->table[i].dwMask) & 0x00FF,
HIWORD(pIPTable->table[i].dwMask) >> 8);
Memo1->Lines->Add(String().sprintf(TEXT("IP: %s 子网掩码: %s"),
szIPAddr, szSubMask));
}
::GlobalFree(pIPTable);
}
现在可以得到三组IP .
1. 127.0.0.0
2. 192.168.1.123
3. 192.168.0.233
其中, 2 是有线网络的IP地址,3是无线网络的IP地址.
我怎么判断哪一个是有线网络的地址.
------解决方案--------------------
好事做到底,简单代码:
#include <tchar.h>
#include <iphlpapi.h>
#include <stdio.h>
#pragma link "iphlpapi.lib"
void __fastcall TForm1::Button1Click(TObject *Sender)
{
PIP_ADAPTER_INFO pAdapterInfo = NULL;
DWORD dwOutBufLen;