다수의 아이피(IP)를 가지고 있는 경우 자신의 아이피(IP) 주소 목록을 얻는 프로그램입니다.
아래와 같이 winsock의 gethostname(), gethostbyname()을 이용하면 아이피 목록을 쉽게 알아낼 수 있습니다.
핵심코드: |
void GetMyIPArray( CArray< in_addr, in_addr& >& raIP ) { WSADATA WsaData; if( WSAStartup( 0x202, &WsaData ) == SOCKET_ERROR ) return;
char name[256]; PHOSTENT pHostInfo; struct sockaddr_in addr;
// 자신의 호스트이름 얻기 if( gethostname( name, sizeof( name ) ) == 0 ) { // 호스트이름을 통하여 호스트정보 얻기 pHostInfo = gethostbyname( name ); if( pHostInfo ) { // 반복해서 IP얻기 for( int i=0; pHostInfo->h_addr_list[i] != NULL; i++ ) { memcpy( &addr.sin_addr, pHostInfo->h_addr_list[i], pHostInfo->h_length ); raIP.Add( addr.sin_addr ); } } }
WSACleanup(); } |
'C & C++ > MFC Network' 카테고리의 다른 글
[IP] IE BHO 전용 브라우져 시 새창 띄울때 IE모양 바꾸기~ (0) | 2011.04.18 |
---|---|
[IP] 인터넷 임시파일 삭제 (0) | 2011.04.14 |
[IP] Web Page 다운로드 (0) | 2011.04.14 |
[IP] 웹 프로토콜(HTTP)을 이용한 파일 가져오기 (0) | 2011.01.26 |
[IP] 네트워크 관련 (0) | 2011.01.13 |
댓글