2014년 10월 27일 월요일

Mac Address 얻어오기

//GetIfTable 를 사용하기 위해 추가.
#include <Iphlpapi.h>
#pragma comment( lib, "netapi32.lib" )
#pragma comment( lib, "Iphlpapi.lib" )

void GetMAC()
{
 PMIB_IFTABLE it = (MIB_IFTABLE*) malloc(sizeof(MIB_IFTABLE));
 DWORD dwSize  = 0;
 if (GetIfTable(it, &dwSize, 0) == ERROR_INSUFFICIENT_BUFFER) {
  delete it;
  it = (MIB_IFTABLE *) malloc (dwSize);
 }

 DWORD dwResult = 0;
 dwResult = GetIfTable(it, &dwSize, 0);

 CString strMacAddress;
 for(int l = 0 ; l < it->table[0].dwPhysAddrLen ; l++){
  if( l > 0)
   strMacAddress += _T("");
  strMacAddress.Format(strMacAddress + _T("%02X"),it->table[0].bPhysAddr[l]);
 }

 delete it;

 if(dwResult == NO_ERROR)
AfxMessageBox(strMacAddress);
}

댓글 없음: