#include <Winsock2.h>
char szHostName[128];
CString strIP;
if ( ::gethostname( szHostName, 128 ) == 0 )
{
hostent *ht;
if (( ht = ::gethostbyname( szHostName )) != NULL )
{
// get local ipv4
ip.Format( "%d.%d.%d.%d", (unsigned char)ht->h_addr[0],(unsigned char)ht->h_addr[1], (unsigned char)ht->h_addr[2], (unsigned char)ht->h_addr[3] );
// change ipv4 to in_addr structure
unsigned long ul = inet_addr( ip );
}
}