获取本机MAC地址
来源:互联网 发布:淘宝店哪家符咒是真的 编辑:程序博客网 时间:2024/04/28 07:49
获取本机MAC地址,要加载外部头文件iphlpapi.h,但是头文件加载顺序不对,会出现很多错误,类似这样的错误:
c:\program files (x86)\microsoft visual studio\vc98\include\mprapi.h(173) : error C2501: 'WCHAR' : missing storage-class or type specifiers
c:\program files (x86)\microsoft visual studio\vc98\include\mprapi.h(173) : error C2501: 'wszInterfaceName' : missing storage-class or type specifiers
c:\program files (x86)\microsoft visual studio\vc98\include\mprapi.h(174) : error C2146: syntax error : missing ';' before identifier 'hInterface'
c:\program files (x86)\microsoft visual studio\vc98\include\mprapi.h(174) : error C2501: 'HANDLE' : missing storage-class or type specifiers
c:\program files (x86)\microsoft visual studio\vc98\include\mprapi.h(174) : error C2501: 'hInterface' : missing storage-class or type specifiers
。。。。。
以上头文件顺序是
#include "iphlpapi.h"
#include <WINSOCK2.H>
如果把位置换一下:
#include <WINSOCK2.H>
#include "iphlpapi.h"
就没有问题了,也不知道为什么。
以下代码是获取本机MAC地址:
void getMac(BYTE strMac[6]){PIP_ADAPTER_INFO pAdapterInfo; DWORD AdapterInfoSize; TCHAR szMac[32] = {0}; DWORD Err; AdapterInfoSize = 0; Err = GetAdaptersInfo(NULL, &AdapterInfoSize); if((Err != 0) && (Err != ERROR_BUFFER_OVERFLOW)){ // TRACE("获得网卡信息失败!"); return ; } // 分配网卡信息内存 pAdapterInfo = (PIP_ADAPTER_INFO)GlobalAlloc(GPTR, AdapterInfoSize); if(pAdapterInfo == NULL){ // TRACE("分配网卡信息内存失败"); return ; } if(GetAdaptersInfo(pAdapterInfo, &AdapterInfoSize) != 0){ //TRACE(_T("获得网卡信息失败!\n")); GlobalFree(pAdapterInfo); return ; } for(int i=0;i<6;i++){strMac[i]=pAdapterInfo->Address[i];}}
获取本机IP地址:
char* getIP(){WSAData wsaData; if(WSAStartup(MAKEWORD(1,1),&wsaData)!=0) { return 0; } char host_name[225];if(gethostname(host_name,sizeof(host_name)) == SOCKET_ERROR){cout<<"error"<<WSAGetLastError()<<" 错误"<<endl;return NULL;}struct hostent *phe=gethostbyname(host_name);struct in_addr addr;memcpy(&addr,phe->h_addr_list[0],sizeof(struct in_addr));return inet_ntoa(addr);}
- 获取本机mac地址
- 获取本机MAC地址
- 获取本机MAC地址
- 获取本机MAC地址
- 获取本机MAC地址
- 获取本机mac地址
- 获取本机MAC地址
- 获取本机MAC地址
- 如何获取本机所有MAC地址
- 如何获取本机所有MAC地址
- 用VC获取本机MAC地址
- 获取本机mac地址的方法
- 如何获取本机所有MAC地址
- C#获取本机的MAC地址
- C#获取本机的MAC地址
- VC获取本机MAC地址源代码
- 获取本机网卡的MAC地址?
- vc6 获取本机所有mac地址
- Android自定义照相机 预览拍照 切换前后置摄像头
- 如何让 Git 使用 HTTP 代理服务器
- Matlab常用函数
- I学霸官方免费教程三十一:Java集合框架之List集合
- 多级反馈队列调度算法
- 获取本机MAC地址
- Leetcode#22||Generate Parentheses
- 创建型模式:单例模式
- Struts2标签库
- Class.forName和ClassLoader.loadClass的区别
- __thread关键字
- import 用法与包的导入
- csu oj K swap operation 模拟
- 【NYIST】暑假训练赛 (一)-----Problem B