//获取硬盘ID信息及网卡MAC地址的代码
#include "stdafx.h"
#include <atlbase.h>
#include <atlconv.h>
#include "iphlpapi.h"
#pragma comment ( lib, "Iphlpapi.lib" )
BOOLEAN getActiveMac( char* sMac )
{
BOOLEAN bRtn = FALSE;
PIP_ADAPTER_INFO pAdapterInfo;
PIP_ADAPTER_INFO pAdapter = NULL;
DWORD dwRetVal = 0;
pAdapterInfo = (IP_ADAPTER_INFO *) malloc( sizeof(IP_ADAPTER_INFO) );
ULONG ulOutBufLen = sizeof(IP_ADAPTER_INFO);
if (GetAdaptersInfo( pAdapterInfo, &ulOutBufLen) != ERROR_SUCCESS)
{
free (pAdapterInfo);
pAdapterInfo = (IP_ADAPTER_INFO *) malloc (ulOutBufLen);
}
if ((dwRetVal = GetAdaptersInfo( pAdapterInfo, &ulOutBufLen)) == NO_ERROR)
{
pAdapter = pAdapterInfo;
char szMac[20] = {0};
char szAddress[4] = {0};
while (pAdapter)
{
if ( strcmp( pAdapter->IpAddressList.IpAddress.String ,"0.0.0.0" ) != 0 )
{
for (UINT i = 0; i < pAdapter->AddressLength; i++)
{
sprintf_s( szAddress , "%02X", pAdapter->Address[i] );
strcat_s( szMac , szAddress );
if( i != pAdapter->AddressLength - 1 )
{
strcat_s( szMac , "-" );
}
}
break;
}
pAdapter = pAdapter->Next;
}
memcpy( sMac , szMac , strlen( szMac ) );
}
else
{
printf("Call to GetAdaptersInfo failed.\n");
}
return bRtn;
}
int main(int argc, char* argv[])
{
char sMac[20] = {0};
getActiveMac( sMac );
printf( "%s" , sMac );
return 0;
}
分享到:
相关推荐
VC获取本机名称IP地址MAC地址
VC源码,VC6.0编译,可获取本机mac地址。
vc 获取MAC 地址,vc 2005 MFC。 通过ipconfig命令获取mac地址, 不依赖于windows的网络相关服务.
VC6.0获取MAC地址,代码,比较简洁,32位下
主要介绍了VC实现获取本机MAC地址的方法,需要的朋友可以参考下
VC 获取MAC和IP的代码,同时获得域名、主机名、独立工作域、绑定的Ip地址、默认网关以及DNS等。可将本代码所演示的获取方法应用到其它的VC 开发项目中,挺基础,但属于有必要掌握的内容,测试截图如图所示。 程序...
简单的VC++ 获取mac地址识别标识,自己运行过,完全可以用的
该代码使用VC获取本机机器指纹信息,比如CPU ID、硬盘ID、MAC地址、BIOS等
调用函数Netbios获得所有网卡信息,并遍历每块网卡,获得网卡的MAC地址。
用socket写的获取本地mac地址的编程文件,里面已经有生成器
通过客服端软件调用该dll可以获取客户机mac地址
vc++获取取网卡MAC地址的三种方法.zip visual c++取得网卡物理地址的三种方法.zip
vc下获取本地网卡信息,并获得局域网内活动主机的IP-MAC地址映射
vc6.0实现MAC地址的读取,保证软件在唯一电脑中运行。
delphi 调用vc dll 获取返回数据 mac地址,遇到的问题是delphi一直都获取不到vc返回的字符串,最后通过strcpy解决了
VC 下建立win32程序实现获取本机IP地址和MAC 地址
vc 网卡ip真实 mac获取,window mac分一个上层,一个低层。
VC轻松获取MAC函数,这个函数需要用到iphlpapi.h和iphlpapi.lib,在压缩包中已附带。
VC 获取DNS 子网掩码 IP地址以及路由设置等网络配置参数,另外还可获取主机名、工作域、网卡MAC地址、默认网关以及是否使用IP路由等,编写网络相关软件时,这是一些必备的网络参数。程序运行截图如图所示。
在日常应用开发时经常需要获取设备的MAC地址,由于虚拟网卡等的干扰导致获取的MAC地址错误,本VC工程提供一种基于API的MAC地址的筛选方法能够直接获取当前正在使用的物理网卡地址。