您的位置:首页 > 理论基础 > 计算机网络

Windows中获取本机MAC地址的方法

2018-02-12 14:09 429 查看
Windows下获取网卡MAC地址的方法的代码
#include <WinSock2.h>
#include "Iphlpapi.h"
#pragma comment(lib,"Iphlpapi.lib")

void GetMac(byte * mac)
{
PIP_ADAPTER_INFO pIpAdapterInfo = new IP_ADAPTER_INFO();
unsigned long stSize = sizeof(IP_ADAPTER_INFO);
int nRel = GetAdaptersInfo(pIpAdapterInfo,&stSize);
if (ERROR_BUFFER_OVERFLOW == nRel)
{
delete pIpAdapterInfo;
pIpAdapterInfo = (PIP_ADAPTER_INFO)new BYTE[stSize];
nRel=GetAdaptersInfo(pIpAdapterInfo,&stSize);
}
if (ERROR_SUCCESS == nRel)
{
while (pIpAdapterInfo)
{
memcpy(mac,pIpAdapterInfo->Address,8);
break;//获取到第一个网卡的MAC
}
}
if (pIpAdapterInfo)delete pIpAdapterInfo;
}
void main(int argc, char* argv[])
{
byte mac[8]={0};
GetMac(mac);
printf("本机MAC:");
for (DWORD i = 0; i < 6; i++)
{
if (i < 5)
{
printf("%02X-", mac[i]);
}
else
{
printf("%02X", mac[i]);
}
}
printf("\n");
system("pause");
}

转载自:http://www.cjjjs.com/paper/xmkf/20161013182731697.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Windows网络编程