#include
<
list
>
#include < string >
using namespace std;
#include < Winsock2.h >
#pragma comment(lib,"Ws2_32.lib")
int GetIPList(list < string > & iplist)
... {
WSADATA wsa;
if( WSAStartup( 0x22, &wsa ) != 0 )
...{
return -1;
}
iplist.clear();
char name[128];
if( -1 == gethostname(name, sizeof(name)) )
...{
WSACleanup();
return -1;
}
struct hostent FAR * pHostent;
pHostent = gethostbyname(name);
if( NULL == pHostent )
...{
WSACleanup();
return -1;
}
char **p = pHostent->h_addr_list;
for( ; *p != NULL; p++ )
...{
string strip = inet_ntoa( *(IN_ADDR*)(*p) );
iplist.push_back( strip );
}
WSACleanup();
return (int)iplist.size();
}
int _tmain( int argc, _TCHAR * argv[])
... {
list<string> iplist;
GetIPList( iplist );
return 0;
}
#include < string >
using namespace std;
#include < Winsock2.h >
#pragma comment(lib,"Ws2_32.lib")
int GetIPList(list < string > & iplist)
... {
WSADATA wsa;
if( WSAStartup( 0x22, &wsa ) != 0 )
...{
return -1;
}
iplist.clear();
char name[128];
if( -1 == gethostname(name, sizeof(name)) )
...{
WSACleanup();
return -1;
}
struct hostent FAR * pHostent;
pHostent = gethostbyname(name);
if( NULL == pHostent )
...{
WSACleanup();
return -1;
}
char **p = pHostent->h_addr_list;
for( ; *p != NULL; p++ )
...{
string strip = inet_ntoa( *(IN_ADDR*)(*p) );
iplist.push_back( strip );
}
WSACleanup();
return (int)iplist.size();
}
int _tmain( int argc, _TCHAR * argv[])
... {
list<string> iplist;
GetIPList( iplist );
return 0;
}