IP - Adresse ausgeben



  • moin

    wie bekomm ich unter windows mit ms vc++ 6.0 unter einbindung der winsocket.h
    meine eigene ip adresse in einem CString abgespeichert ???

    bin aus den hilfen hier im forum net schlau geworden ...

    thx LT



  • Ist zwar kein Cstring und hab auch kein vc++ 6, aber vielleicht hilfts ja!

    #include <stdio.h>
    #include <winsock.h>
    #pragma comment(lib,"wsock32.lib")
    
    int main()
    {
     char hostname[255];
     char *szIPAddress;
     WORD wVer;
     WSADATA wData;
     PHOSTENT hostinfo;
     wVer = MAKEWORD( 2, 0 );
    
     if ( WSAStartup( wVer, &wData ) == 0 )
     {
      if( gethostname ( hostname, sizeof(hostname)) == 0)
      {
       if((hostinfo = gethostbyname(hostname)) != NULL)
       {
        szIPAddress = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list);
       }
      }
     WSACleanup();
     } 
    
      	printf("IP : %s\n", szIPAddress);
    	printf("Hostname : %s\n", hostname);
    	printf("\n\n");
      return 0;
    }
    


  • Die öffentliche IP-Adresse kannst du mit CURL (siehe Google) oder händisch per Sockets unter http://whatismyip.org/ nachschlagen. Die öffentliche Adresse ist die, unter der du "aus dem Internet" sichtbar bist, z.B. wenn du hinter einem Router sitzt.


Anmelden zum Antworten