首页 > 技术文章 > MFC获取本机MAC地址

kingbin 2014-11-04 17:31 原文

//数组的大小只能是13
1
GetMacAdress(char arr[],int Num){ 2 char MAC[13]={0}; 3 PIP_ADAPTER_INFO pAdapterInfo; 4 PIP_ADAPTER_INFO pAdapter = NULL; 5 DWORD dwRetVal = 0; 6 pAdapterInfo = (IP_ADAPTER_INFO*)malloc(sizeof(IP_ADAPTER_INFO)); 7 ULONG ulOutBufLen = sizeof(IP_ADAPTER_INFO); 8 if(GetAdaptersInfo(pAdapterInfo,&ulOutBufLen) != ERROR_SUCCESS) 9 { 10 free(pAdapterInfo); 11 pAdapterInfo=(IP_ADAPTER_INFO*)malloc(ulOutBufLen); 12 13 } 14 if((dwRetVal=GetAdaptersInfo(pAdapterInfo,&ulOutBufLen)) == NO_ERROR) 15 { 16 pAdapter = pAdapterInfo; 17 while(pAdapter) 18 { 19 if(strstr(pAdapter->Description,"PCI")) 20 { 21 sprintf_s(MAC,"%02X%02X%02X%02X%02X%02X",pAdapter->Address[0],pAdapter->Address[1],pAdapter->Address[2],pAdapter->Address[3],pAdapter->Address[4],pAdapter->Address[5]); 22 strcpy_s(arr,Num,MAC); 23 24 } 25 pAdapter=pAdapter->Next; 26 } 27 }else{ 28 strcpy_s(MAC,sizeof(MAC),"NONE"); 29 strcpy_s(arr,Num,MAC); 30 } 31 }

 

推荐阅读