#include <WinSock.h>
#include <IPHlpApi.h> // for GetAdaptersInfo()
#pragma comment(lib, "iphlpapi.lib" )
int _tmain(int argc, _TCHAR* argv[])
{
char strMac[256];
DWORD size = sizeof(PIP_ADAPTER_INFO);
PIP_ADAPTER_INFO Info;
ZeroMemory(&Info,
size);
int result = GetAdaptersInfo(Info,
&size); // 첫번째 랜카드 MAC address 가져오기
if (result == ERROR_BUFFER_OVERFLOW) // GetAdaptersInfo가 메모리가 부족하면 재 할당하고 재호출
{
Info = (PIP_ADAPTER_INFO)malloc(size);
GetAdaptersInfo(Info, &size);
}
if (!Info) return 0;
sprintf(strMac, "%0.2X-%0.2X-%0.2X-%0.2X-%0.2X-%0.2X",
Info->Address[0], Info->Address[1],
Info->Address[2], Info->Address[3], Info->Address[4], Info->Address[5]);
printf(strMac);
return 0;
}
|
Post List
2015년 1월 15일 목요일
C++ Windows에서 MAC Address 얻기
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기