tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
222
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Jonas Meyer Jonas Meyer ist offline Mitglied Silber
    Registriert seit
    Jul 2011
    Beiträge
    65
    Hallo,
    Ich hab ne fragen und zwar was hab ich falsch gemacht in der Konsole wird mir nichts ausgegeben. Aber eigendlich müsste ein Fehler kommen beim Connecten.


    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    
    #include <iostream>
    #include <WinSock.h>
     
    #pragma comment(lib, "wsock32.lib")
     
    using namespace std;
     
    int main()
    {
        SOCKET s;
        sockaddr_in server;                                                         //Server Daten
        unsigned long addr;                                                         //Adresse von Server
     
        WSADATA data;                                                               //Daten 
        WSAStartup(MAKEWORD(1, 1), &data);                                          //Starten
     
        s = socket(AF_INET,SOCK_STREAM,0);                                          //Socket wird angefordert
        if(s < 0)
        {
            cout << "Fehler bei Socket" << endl;                                    //Fehler wenn kein Socket vorhanden ist
        }
     
     
        addr = inet_addr("127.0.0.1");                                              //Adresse von Server wird zugewiesen (127.0.0.1 is local)
        memcpy((char*)&server.sin_addr, &addr, sizeof(addr));                       //Server Eigenschaften werden eingefügt
        server.sin_family = AF_INET;
        server.sin_port = htons(80);
     
        if(connect(s,(sockaddr* )&server,sizeof(server)) == -1)                         //Zum server Connecten
        {
            cout << "Fehler beim verbinden zum Sever" << endl;
        }
     
     
        WSACleanup();                                                               //Beenden
     
     
     
        cin.get();
        return 0;
    }


    Also er zeigt da der er Erfolgreich Connectet aber ein Server hab ich nicht....

    mfG
    Jonas
    Geändert von Jonas Meyer (04.11.11 um 21:47 Uhr)
     

  2. #2
    Avatar von saftmeister
    saftmeister saftmeister ist offline Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.516
    Bist du dir sicher? Aber was mir gerade aufgefallen ist: Müsste die Adresse nicht so festgelegt werden?

    Code c++:
    1
    
    server.sin_addr.s_addr = inet_addr("127.0.0.1");

    Also statt der memcpy-Anweisung.
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    Jonas Meyer Jonas Meyer ist offline Mitglied Silber
    Registriert seit
    Jul 2011
    Beiträge
    65
    Ich lerne grade Socket und so...
    Hier der Link:http://www.youtube.com/watch?v=gKPV_...eature=related
    Da hat es geklappt.
     

  4. #4
    Avatar von saftmeister
    saftmeister saftmeister ist offline Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.516
    Schon meine Variante probiert? Wenn du immer noch keinen Fehler siehst, hast du mit sehr hoher Wahrscheinlichkeit doch einen Webserver laufen (oder einen anderen Dienst, der an Port 80 lauscht).
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  5. #5
    Jonas Meyer Jonas Meyer ist offline Mitglied Silber
    Registriert seit
    Jul 2011
    Beiträge
    65
    ka da ist wohl ein Programm offen deine Lösung mach das gleich wie was ich vorher hatte...
     

  6. #6
    Avatar von saftmeister
    saftmeister saftmeister ist offline Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.516
    Gut, dennoch ist memcpy() an der Stelle Kanonen auf Spatzen... in_addr ist ein union-struct, welches bei s_addr nur ein unsigned long ist. Von daher...

    Mach mal mit dem Browser http://localhost
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

Ähnliche Themen

  1. Socket-Fehler
    Von PhilippGer im Forum Java Grundlagen
    Antworten: 6
    Letzter Beitrag: 13.07.09, 15:42
  2. IdUDP Socket-Fehler abfangen
    Von real_benedikt im Forum Delphi, Kylix, Pascal
    Antworten: 11
    Letzter Beitrag: 16.10.08, 19:21
  3. Antworten: 2
    Letzter Beitrag: 30.01.08, 10:24
  4. Antworten: 2
    Letzter Beitrag: 29.01.08, 14:59
  5. Server Socket und Client Socket
    Von spiderman21 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 2
    Letzter Beitrag: 23.10.07, 17:00