如何获取本机的网关IP地址?

Wenxy1 2006-01-09 02:29:11
如题。
...全文
2752 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wenxy1 2006-01-09
  • 打赏
  • 举报
回复
bool CNetView::GetAdapterInfo(CString &strGwIp)
{
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);
strGwIp.Format("网关[%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;
}
lostlander 2006-01-09
  • 打赏
  • 举报
回复
http://search.csdn.net/Expert/topic/2315/2315588.xml?temp=.8135645
Wenxy1 2006-01-09
  • 打赏
  • 举报
回复
GetIpNetTable()?

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧