Winsock Datenlänge??



  • Hallo

    Die Winsockabfrage funktioniert soweit ganz gut. Die Daten kommen als String rüber. Bei meiner Variante werden aber zuviel Zeichen ausgelesen (mehr als da sind, die Strings sind auch nicht immer gleich lang), das Ende jedes Strings wird mit einem carrige return gekennzeichnet. Wie kann ich es einrichten, daß nur bis zum carrige return eingelesen wird?

    void GetFile()
    {
        #define PORT 4567 /// Select any free port you wish
    
        AfxSocketInit(NULL);
        CSocket sockClient;
        sockClient.Create();
    
        // "127.0.0.1" is the IP to your server, same port
        sockClient.Connect("127.0.0.1", PORT); 
    
        char fe1[1000];
        sockClient.Receive(fe1, 99);
        string str1 = fe1;
        cout << str1.c_str() << endl;
    
        for (int i=0; i<4; i++)
        {
            sockClient.Receive(fe1, 999);
            str1 = fe1;
            cout << str1.c_str() << endl;
        }
        sockClient.Close();
    }
    


  • Ich habe es mittlerweile heruasbekommen. Da hier aber niemand mit mir spricht, verrate ich es auch nicht. :p


Anmelden zum Antworten