맥주소를 받아오는 소스입니다. 소스에서 대해서 질문있습니다.
사라
#include winsock2.h
#include iphlpapi.h
#include stdio.hvoid main() { WSADATA wsaData;
BYTE MacAddress[6];DWORD Result;
ULONG BufferLength = sizeof(IP_ADAPTER_ADDRESSES);
PIP_ADAPTER_ADDRESSES pAddr = (PIP_ADAPTER_ADDRESSES)malloc(BufferLength);
if(WSAStartup(MAKEWORD(2,2), &wsaData) != 0) {
//error 처리
}Result = GetAdaptersAddresses(AF_INET, 0, NULL, pAddr, &BufferLength);
if ( Result == ERROR_BUFFER_OVERFLOW )
{
free(pAddr);
pAddr = (PIP_ADAPTER_ADDRESSES)malloc(BufferLength);
}Result = GetAdaptersAddresses(AF_INET, 0, NULL, pAddr, &BufferLength);
if ( Result != NO_ERROR )
{
free(pAddr);
return;
}
memcpy(MacAddress, pAddr-PhysicalAddress, sizeof(BYTE) * 6);
printf(%2x\n,pAddr-PhysicalAddress); // 여기
printf(%2x,MacAddress);//여기free(pAddr);}위의 printf 두군데에서요 값을 찍으면 같은 값이 나와야 되는거 아닌가요?그리고 MacAddress변수의 값을 찍으면 mac주소 값이 찍히는게 맞나요?