bool GetGateayInfo(char *szGwIp)
{
PIP_ADAPTER_INFO pAdapterInfo;
PIP_ADAPTER_INFO pAdapter = NULL;
DWORD dwRetVal = 0;
pAdapterInfo = (IP_ADAPTER_INFO *) malloc( sizeof(IP_ADAPTER_INFO) );
unsigned long ulOutBufLen = sizeof(IP_ADAPTER_INFO);
// Make an initial call to GetAdaptersInfo to get
// the necessary size into the ulOutBufLen variable
if( GetAdaptersInfo(pAdapterInfo, &ulOutBufLen) == ERROR_BUFFER_OVERFLOW)
{
free(pAdapterInfo);
pAdapterInfo = (IP_ADAPTER_INFO *)malloc(ulOutBufLen);
}
if ((dwRetVal = GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)) == NO_ERROR)
{
pAdapter = pAdapterInfo;
while (pAdapter)
{
TRACE("/tAdapter Name: /t%s/n", pAdapter->AdapterName);
TRACE("/tAdapter Desc: /t%s/n", pAdapter->Description);
TRACE("/tAdapter Addr: /t%ld/n", pAdapter->Address);
TRACE("/tIP Address: /t%s/n", pAdapter->IpAddressList.IpAddress.String);
TRACE("/tIP Mask: /t%s/n", pAdapter->IpAddressList.IpMask.String);
TRACE("/tGateway: /t%s/n", pAdapter->GatewayList.IpAddress.String);
TRACE("网关[%s]", pAdapter->GatewayList.IpAddress.String);
//AfxMessageBox(strGwIp);
TRACE("/t***/n");
if (pAdapter->DhcpEnabled)
{
TRACE("/tDHCP Enabled: Yes/n");
TRACE("/t/tDHCP Server: /t%s/n", pAdapter->DhcpServer.IpAddress.String);
TRACE("/tLease Obtained: %ld/n", pAdapter->LeaseObtained);
}
else
TRACE("/tDHCP Enabled: No/n");
if (pAdapter->HaveWins)
{
TRACE("/tHave Wins: Yes/n");
TRACE("/t/tPrimary Wins Server: /t%s/n", pAdapter->PrimaryWinsServer.IpAddress.String);
TRACE("/t/tSecondary Wins Server: /t%s/n", pAdapter->SecondaryWinsServer.IpAddress.String);
}
else
TRACE("/tHave Wins: No/n");
pAdapter = pAdapter->Next;
}
}
else
{
TRACE("Call to GetAdaptersInfo failed./n");
return false;
}
free(pAdapterInfo);
return true;
}
获取网卡相关信息
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章