WMI를 사용하지 않고 사운드카드이름, 연결된 맥어드레스 및 IP주소를 구하는 소스입니다.
연결된 IP주소의 맥어드래스를 구할때 쓸만하겠죠?
충분히 테스트를 하지않았기 때문에 문제가 발생할 수도 있습니다.
사용하시는 분은 충분한 테스트를 해보시기 바랍니다.
#include <Iphlpapi.h>
#pragma comment(lib,"iphlpapi.lib")
void CPCInfoDlg::OnBtnNet()
{
// TODO: Add your control notification handler code here
IP_ADAPTER_INFO AdapterInfo[16];
DWORD dwBufLen = sizeof(AdapterInfo);
DWORD dwStatus = GetAdaptersInfo(
AdapterInfo,
&dwBufLen);
if (dwStatus != ERROR_SUCCESS)
{
TRACE("Getting Error...\n");
}
PIP_ADAPTER_INFO pAdapterInfo = AdapterInfo;
CString strPrint;
do {
AfxMessageBox(pAdapterInfo->Description);
TRACE("%0.2X:%0.2X:%0.2X:%0.2X:%0.2X:%0.2X\n", pAdapterInfo->Address[0], pAdapterInfo->Address[1], pAdapterInfo->Address[2], pAdapterInfo->Address[3], pAdapterInfo->Address[4], pAdapterInfo->Address[5]);
strPrint.Format("%0.2X:%0.2X:%0.2X:%0.2X:%0.2X:%0.2X\n", pAdapterInfo->Address[0], pAdapterInfo->Address[1], pAdapterInfo->Address[2], pAdapterInfo->Address[3], pAdapterInfo->Address[4], pAdapterInfo->Address[5]);
AfxMessageBox(strPrint);
PIP_ADDR_STRING pIPAddrInfo = &(pAdapterInfo->IpAddressList);
do {
TRACE("IP주소 : %s\n", pAdapterInfo->IpAddressList.IpAddress.String);
strPrint.Format("IP주소 : %s\n", pAdapterInfo->IpAddressList.IpAddress.String);
AfxMessageBox(strPrint);
pIPAddrInfo = pIPAddrInfo->Next;
}while(pIPAddrInfo);
pAdapterInfo = pAdapterInfo->Next;
}while(pAdapterInfo);
}
'프로그래밍 팁 > etc' 카테고리의 다른 글
메모리 정보 확인 (0) | 2010.04.20 |
---|---|
하드디스크 용량확인 (0) | 2010.04.19 |
printf와 같은 포멧 (0) | 2010.04.15 |
URLDownloadToFile 예제 (0) | 2010.04.13 |
CImageList예제 (0) | 2010.04.12 |