获取网络,本地连接的具体名称(Friendly Name)
2010-07-02 15:40
106 查看
工作需要,程序需要 以下代码可以得到 本地连接的具体名称。在VC 6.0下需安装sdk.
添加 以下代码:
#include <Mprapi.h>
#include <iphlpapi.h>
#pragma comment( lib, "Iphlpapi.lib" )
#pragma comment( lib, "Mprapi.lib" )
HANDLE hMprConfig;
DWORD dwRet=0;
CString strInfo,strTmp;
PIP_INTERFACE_INFO plfTable=NULL;
IP_ADAPTER_INDEX_MAP AdaptMap;
DWORD dwBufferSize=0;
WCHAR szFriendName[256];
DWORD tchSize=sizeof(WCHAR)*256;
ZeroMemory(&szFriendName,tchSize);
dwRet=MprConfigServerConnect (NULL,&hMprConfig);
dwRet=GetInterfaceInfo(NULL,&dwBufferSize);
if(dwRet==ERROR_INSUFFICIENT_BUFFER)
{
plfTable=(PIP_INTERFACE_INFO)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,dwBufferSize);
GetInterfaceInfo(plfTable,&dwBufferSize);
}
strInfo.Empty();
for(UINT i=0;i<plfTable->NumAdapters;i++)
{
AdaptMap=plfTable->Adapter[i];
dwRet=MprConfigGetFriendlyName(hMprConfig,AdaptMap.Name,(PWCHAR)szFriendName,tchSize);
char szName[256];
memset( szName, 0, 256 );
int nLen = WideCharToMultiByte( CP_ACP,NULL, szFriendName,-1,NULL,0,NULL,FALSE );
WideCharToMultiByte (CP_ACP,NULL,szFriendName,-1,szName,nLen,NULL,FALSE);
strTmp.Format(_T("Index:%u/nName:%s/n"),AdaptMap.Index,szName);
strInfo+=strTmp;
}
AfxMessageBox(strInfo);
HeapFree(GetProcessHeap(),HEAP_ZERO_MEMORY,plfTable);
添加 以下代码:
#include <Mprapi.h>
#include <iphlpapi.h>
#pragma comment( lib, "Iphlpapi.lib" )
#pragma comment( lib, "Mprapi.lib" )
HANDLE hMprConfig;
DWORD dwRet=0;
CString strInfo,strTmp;
PIP_INTERFACE_INFO plfTable=NULL;
IP_ADAPTER_INDEX_MAP AdaptMap;
DWORD dwBufferSize=0;
WCHAR szFriendName[256];
DWORD tchSize=sizeof(WCHAR)*256;
ZeroMemory(&szFriendName,tchSize);
dwRet=MprConfigServerConnect (NULL,&hMprConfig);
dwRet=GetInterfaceInfo(NULL,&dwBufferSize);
if(dwRet==ERROR_INSUFFICIENT_BUFFER)
{
plfTable=(PIP_INTERFACE_INFO)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,dwBufferSize);
GetInterfaceInfo(plfTable,&dwBufferSize);
}
strInfo.Empty();
for(UINT i=0;i<plfTable->NumAdapters;i++)
{
AdaptMap=plfTable->Adapter[i];
dwRet=MprConfigGetFriendlyName(hMprConfig,AdaptMap.Name,(PWCHAR)szFriendName,tchSize);
char szName[256];
memset( szName, 0, 256 );
int nLen = WideCharToMultiByte( CP_ACP,NULL, szFriendName,-1,NULL,0,NULL,FALSE );
WideCharToMultiByte (CP_ACP,NULL,szFriendName,-1,szName,nLen,NULL,FALSE);
strTmp.Format(_T("Index:%u/nName:%s/n"),AdaptMap.Index,szName);
strInfo+=strTmp;
}
AfxMessageBox(strInfo);
HeapFree(GetProcessHeap(),HEAP_ZERO_MEMORY,plfTable);
相关文章推荐
- 获取网络连接名称“本地连接”的两种方法
- 批处理获取网络连接名称和设置IP地址
- C# 如何获取本地数据库SQL Server的数据库服务器名称和数据库名称?然后连接,代码怎么写?
- 如何获取本地网络中的所有(sqlserver)服务器名称,并测试其连通性!
- Win7如何修改和删除多余的网络连接名称如本地连接2网络2等
- Visual C++ Tips: 用 IP Helper 获得网络接口的友好名称(Friendly Name)
- ios获取当前连接的网络名称
- Java网络编程 获取本地主机名称和地址
- 本地网络连接不能自动获取IP的解决办法
- 获取网络适配器的相关信息(包括网络连接名称)
- Android获取网络类型名称
- Determining and Monitoring the Connectivity StatusAndroid 电源管理专题之获取和监测网络连接状态
- os环境下,使用bsd实现echo server并如何获取本地网络信息
- Android获取应用信息判断网络连接返回桌面及卸载apk结束进程等的实现思路
- win7连接共享“请检查名称的拼写.否则网络可能有问题”
- linux 下获取当前网络连接状态的两种方法
- Linux C 网络编程 - 获取本地 ip 地址,mac,通过域名获取对应的 ip 、获取本地主机的名字
- 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL
- 如何在magento模板文件中获取controller名称,action名称和module name