#include <IPHlpApi.h> // for GetAdaptersInfo()
#pragma comment(lib, "iphlpapi.lib" )
CString CLogin::GetMACAddress()
{
CString strMac;
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 strMac;
strMac.Format("%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] );
return strMac;
}
'프로그램 경험 > C/C++' 카테고리의 다른 글
[C++ Builder] 날짜 클래스 포맷 변경 (0) | 2010.12.14 |
---|---|
[VC++] 다이얼로그 엔터 치면 종료 되는 현상 방지 (0) | 2010.10.23 |
[VC++] CMap 사용법 (0) | 2010.10.02 |
[VC++] fatal error LNK1120: 1개의 확인할 수 없는 외부 참조입니다. (0) | 2010.09.24 |
[VC++] 다이얼로그 베이스 프로그램에서 종료하기 (0) | 2010.09.24 |