Winsock Falsche Adresse



  • Was mach ich falsch wenn ich immer den Fehlercode 10047 zurück bekomm?
    Oder besser gesagt wie behäb ich den Fehler?
    http://www.supermailer.de/winsock_errorcodes.htm

    #include <winsock.h>
    #include <winsock2.h>
    #include <iostream>
    using namespace std;

    WORD wVersionRequested=MAKEWORD(1, 1);
    WSADATA wsaData;
    int a;
    int port=90;
    unsigned long addr;
    const char ipadr[]="127.0.0.1";

    int main() {

    cout << "Titel: TestClient" << endl << "Developer: " << endl;
    WSAStartup(wVersionRequested, &wsaData);
    SOCKET sock;
    sock=socket(AF_INET, SOCK_STREAM, 0);

    cout << "Intialisiere Socket ..." << endl;

    if(sock<0) {
    cout << "Fehler beim erzeugen des Sockets!" << endl;
    cin.get();
    }
    else
    {

    cout << "Socket erfolgreich erstellt!" << endl;

    struct sockaddr_in {
    short sin_family;
    unsigned short int sin_port;
    struct in_addr sin_addr;
    unsigned char pad[8];
    };

    struct sockaddr_in neu;

    neu.sin_family=AF_INET;
    neu.sin_port=htons(port);

    memset(&neu,0,sizeof(neu));
    addr=inet_addr(&ipadr[1]);
    memcpy( (char *)&neu.sin_addr, &addr, sizeof(addr));

    cout << "Verbindungsaufbau..." << endl << "Port: " << port << endl << "Adresse: " << ipadr << endl;

    if(connect(sock,(struct sockaddr*)&neu, sizeof(neu))<0)
    {
    cout << "Fehler beim Verbindungsaufbau" << endl << "Fehlercode :" <<WSAGetLastError();
    }
    else
    {

    if(a<10000) {
    char daten='G';
    send(sock,&daten,1000,0);
    a++;
    }

    }

    cin.get();
    }

    }



  • versuchs mal mit:

    struct hostent*	hostinfo;
    
    hostinfo = gethostbyname("hostname");
    if (hostinfo == NULL)
    {
    	close(local_socket);
    }
    else neu.sin_addr = *(struct in_addr*) hostinfo->h_addr;
    

    oder alternativ um an alle adressen zu binden:

    neu.sin_addr.s_addr = htonl(INADDR_ANY);
    

    (macht natürlich nur auf serverseite sinn :P)



  • Danke

    jetzt funktioniert es endlich.

    Danke



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten