Brauche dringend Hilfe



  • Ich komme einfach nicht weiter 😕

    laut dem tutorial von c-worker.ch

    sollte dieser code problemlos compiliert werden
    ...wird er aba nicht
    es soll ein link error bei

    s=socket(AF_INET,SOCK_STREAM,0);
    

    vorliegen..
    Hab schon voll viel umgestellt aber ich komme
    einfach nicht weiter

    BITTE Helft Mir!

    #include <windows.h>
    #include <winsock2.h>
    #include <winsock.h>
    #include <iostream>
    #include <cstdlib>
    #include <stdio.h>
    
    using namespace std;
    
    int startWinsock(void);
    
    int main()
    
    {
    
      long rc;
      rc=startWinsock();
    
      //------------------------Client----------------------------
      SOCKET s;
    
      SOCKET socket ( 
      int af,        
      int type,     
      int protocol   
      );
    
      s=socket(AF_INET,SOCK_STREAM,0);
      //----------------------------------------------------------
    
      if(rc!=0)
    
      {
    
        printf("Fehler: startWinsock, fehler code: %d\n",rc);
        int a;
        cin>>a;
        return 1;
    
      }
    
      else
    
      {
    
        printf("Winsock gestartet!\n");
        int b;
        cin>>b;
      }
    
      //------------------------------------------------ 
      if(s==INVALID_SOCKET)
      {
        printf("Fehler: Der Socket konnte nicht erstellt werden, fehler code: %d\n",WSAGetLastError());
        cout<<"Socket konnte nicht erstellt werden!";
        return 1;
      }
      else
      {
      printf("Socket erstellt!\n");
      }
      //--------------------------------------------------
    
      return 0;
    
    }
    int startWinsock(void)
    
    {
    
      WSADATA wsa;
    
      return WSAStartup(MAKEWORD(2,0),&wsa);
    
    }
    


  • Du musst wsock32 hinzulinken.



  • So ?

    #include <wsock32>
    

    Sry bin anfänger



  • Nein, linken bedeutet, du musst deinem Linker bekannt machen, welche Bibliothek er verknüpfen soll. Wenn du eine IDE verwendest, solltest du irgendwo so eine Option haben (unter MSVC++ wäre das bei den Projekt-Eigenschaften).



  • Ich benutze dev-cpp ..
    weißt du da vllt bescheid ?

    Ich nähmlich überhaupt nicht 😕



  • Bei den Projekteinstellungen unter Parameter bei folgendes hinzufügen:

    -lwsock32
    


  • Ich rate dir, von Dev-C++ wegzukommen und auf Code::Blocks oder Microsoft Visual C++ Express umzusteigen. Dev-C++ ist nämlich ziemlich veraltet und wird nicht mehr weiterentwickelt.

    Und wähle beim nächsten Mal bitte einen aussagekräftigen Threadtitel. 😉


Anmelden zum Antworten