//IPHlpApi.lib动态库用于获取网卡的信息,支持IP网关等的获取
#pragma comment(lib,"Iphlpapi.lib")
#include <atlbase.h>
#include <atlconv.h>
#include <iphlpapi.h>
int main()
{
DWORD dwRetVal = 0;
IP_ADAPTER_INFO adapterInfo = {0};
IP_ADAPTER_INFO *pAdapter = NULL;
ULONG ulOutBufLen = sizeof(adapterInfo);
dwRetVal = GetAdaptersInfo(&adapterInfo,&ulOutBufLen);
if(dwRetVal == NO_ERROR)
{
pAdapter = &adapterInfo;
printf("AdapterName:%s\n",pAdapter->AdapterName);
printf("AdapterDesc:%s\n",pAdapter->Description);
printf("AdapterAddr:");
for(UINT i=0;i<pAdapter->AddressLength;i++)
{
printf("%02X%c",pAdapter->Address[i],
i == pAdapter->AddressLength-1 ? '\n' : '-');
}
printf("AdapterType:%d\n",pAdapter->Type);
printf("IPAddress:%s\n",pAdapter->IpAddressList.IpAddress.String);
printf("IPMask:%s\n",pAdapter->IpAddressList.IpMask.String);
}
else
{
printf("GetAdaptersInfo() failed.");
}
return 0;
}