获得MAC地址
来源:互联网 发布:python 中文注释 编辑:程序博客网 时间:2024/05/01 10:57
源代码:
#include<atlbase.h>
#include<atlconv.h>
#include"iphlpapi.h"
#pragma comment(lib,"Iphlpapi.lib")
int main(int argc,char*argv[])
{
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)
{
GlobalFree(pAdapterInfo);
pAdapterInfo=(IP_ADAPTER_INFO*)malloc(ulOutBufLen);
}
if((dwRetVal=GetAdaptersInfo(pAdapterInfo,&ulOutBufLen))==NO_ERROR)
{
pAdapter=pAdapterInfo;
while(pAdapter)
{
if(strstr(pAdapter->Description,"PCI")>=0//pAdapter->Description中包含"PCI"为:物理网卡
|| pAdapter->Type==71 //pAdapter->Type是71为:无线网卡
)
{
printf("--------\n");
printf("AdapterName:%s\n",pAdapter->AdapterName);
printf("AdapterDesc:%s\n",pAdapter->Description);
printf("AdapterAddr:");
for(UINT i=0;i<pAdapter->AddressLength;i++)
{
printf("%02X%c",pAdapter->Address[i],i==pAdapter->AddressLength-1?'\n':'-');
}
printf("AdapterType:%d\n",pAdapter->Type);
printf("IPAddress:%s\n",pAdapter->IpAddressList.IpAddress.String);
printf("IPMask:%s\n",pAdapter->IpAddressList.IpMask.String);
}
pAdapter=pAdapter->Next;
}
}
else
{
printf("CalltoGetAdaptersInfofailed\n");
}
return 0;
}
备注: "iphlpapi.h","Iphlpapi.lib"可能找不到,这个库在VC安装目录可能有,也可能没有,如果没有,可以安装winddk,在winddk相应目录能找到该头文件和库文件,找到之后,将头文件所在目录加入到工程的additional include directories,将库文件所在目录加入到工程的additional library path。
#include<atlbase.h>
#include<atlconv.h>
#include"iphlpapi.h"
#pragma comment(lib,"Iphlpapi.lib")
int main(int argc,char*argv[])
{
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)
{
GlobalFree(pAdapterInfo);
pAdapterInfo=(IP_ADAPTER_INFO*)malloc(ulOutBufLen);
}
if((dwRetVal=GetAdaptersInfo(pAdapterInfo,&ulOutBufLen))==NO_ERROR)
{
pAdapter=pAdapterInfo;
while(pAdapter)
{
if(strstr(pAdapter->Description,"PCI")>=0//pAdapter->Description中包含"PCI"为:物理网卡
|| pAdapter->Type==71 //pAdapter->Type是71为:无线网卡
)
{
printf("--------\n");
printf("AdapterName:%s\n",pAdapter->AdapterName);
printf("AdapterDesc:%s\n",pAdapter->Description);
printf("AdapterAddr:");
for(UINT i=0;i<pAdapter->AddressLength;i++)
{
printf("%02X%c",pAdapter->Address[i],i==pAdapter->AddressLength-1?'\n':'-');
}
printf("AdapterType:%d\n",pAdapter->Type);
printf("IPAddress:%s\n",pAdapter->IpAddressList.IpAddress.String);
printf("IPMask:%s\n",pAdapter->IpAddressList.IpMask.String);
}
pAdapter=pAdapter->Next;
}
}
else
{
printf("CalltoGetAdaptersInfofailed\n");
}
return 0;
}
备注: "iphlpapi.h","Iphlpapi.lib"可能找不到,这个库在VC安装目录可能有,也可能没有,如果没有,可以安装winddk,在winddk相应目录能找到该头文件和库文件,找到之后,将头文件所在目录加入到工程的additional include directories,将库文件所在目录加入到工程的additional library path。
0 0
- 获得网卡MAC地址
- Java 获得MAC地址
- :获得mac地址
- 获得Mac的地址
- 获得网卡MAC地址
- C#获得mac地址
- java获得MAC地址
- iPhone 获得Mac地址
- 获得网卡MAC地址 .
- 获得网卡MAC地址
- 获得MAC地址
- php获得mac地址
- JAVA获得网卡MAC地址
- web方式获得mac地址
- 获得ip和mac地址
- AU3--获得网卡mac地址
- java 获得网卡MAC地址
- 以太网MAC地址获得 android
- HTML5 Canvas超炫酷烟花动画!
- POJ 3422 Kaka's Matrix Travels | 费用流
- 动态和静态树,ajax读取数据
- 关于概率dp的个人理解与总结
- HBase 之 TableDescriptors FSTableDescriptors HTableDescriptor HColumnDescriptor
- 获得MAC地址
- leetcode 刷题之路 49 Unique Binary Search Trees
- Spring bean id相同覆盖的问题解决
- 一转倾心 OPPO N1 mini降价 OPPO N1 mini值不值得购买介绍
- [LeetCode]Median of Two Sorted Arrays
- you must restart adb and eclipse的相关解决办法
- hduoj2018(母牛的故事)
- Reveal使用步骤和 破解Revealapp的试用时间限制
- Maven详解之------maven版本管理