如题。
解决方案 »
- gloox开发XMPP IM的问题
- 怎么把bitmap 复制到toolbar中呢?
- vc的简单问题求点拨
- 菜鸟向大哥们请教:LPSOCKADDR和SOCKADDR*有什么区别?
- 菜鸟问题: 如何派生一个用鼠标能拖动的CStatic类
- 在VB中用CreateObject()方法引用VC开发的DLL,运行时报ActivX控件不能创建对象的错
- 数据库连接问题
- 关于sdk中的资源
- “初始化”: 无法从“OLECHAR *”转换为“ATL::CStringT<BaseType,StringTraits>”
- 请问一下,如下的宏定义该如何理解。
- 网络编程中关于recv函数的问题
- 这里新开了一个 qq群 用于学习交流 vc 快快加入 群号18980290
{
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;
}