Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void getdMacAddresses(std::vector<std::string> &vMacAddresses;)
- {
- vMacAddresses.clear();
- IP_ADAPTER_INFO AdapterInfo[32]; // Allocate information for up to 32 NICs
- DWORD dwBufLen = sizeof(AdapterInfo); // Save memory size of buffer
- DWORD dwStatus = GetAdaptersInfo( // Call GetAdapterInfo
- AdapterInfo, // [out] buffer to receive data
- &dwBufLen); // [in] size of receive data buffer
- //No network card? Other error?
- if(dwStatus != ERROR_SUCCESS)
- return;
- PIP_ADAPTER_INFO pAdapterInfo = AdapterInfo;
- char szBuffer[512];
- while(pAdapterInfo)
- {
- if(pAdapterInfo->Type == MIB_IF_TYPE_ETHERNET)
- {
- sprintf_s(szBuffer, sizeof(szBuffer), "%.2x-%.2x-%.2x-%.2x-%.2x-%.2x"
- , pAdapterInfo->Address[0]
- , pAdapterInfo->Address[1]
- , pAdapterInfo->Address[2]
- , pAdapterInfo->Address[3]
- , pAdapterInfo->Address[4]
- , pAdapterInfo->Address[5]
- );
- vMacAddresses.push_back(szBuffer);
- }
- pAdapterInfo = pAdapterInfo->Next;
- }
- }
Add Comment
Please, Sign In to add comment