Socket select(...) mit MFC CSocket?



  • Ich habe vor einiger Zeit mal einen einfachen Chatserver als Win32 - Konsolenanwendung geschrieben (ohne MFC). Das Programm horcht auf eingehende Verbindungen mit der nicht-MFC Funktion 'select()' (in Zusammenarbeit mit einem FD_SET).
    Der Server läuft auf Port 5193.

    Nun wollte ich aber einen Windows-Client dafür bauen (ein Konsolenclient hab ich bereits und der läuft mit dem Server auch ohne Probleme zusammen). Statt wieder die Funktionen der Marke 'send(...)' etc. zu benutzen wollte ich hier aber die MFC Socket Klassen benutzen.

    CSocket sock;
    sock.Create(5193, SOCK_STREAM, "127.0.0.1");
    

    Wenn nun der Konsolenserver läuft und ich den obigen Code debuge, so gibt die Create-Methode 0 zurück (also einen Fehler). Läuft der Server nicht, funktioniert Create ohne Fehler.

    Ist es möglich, daß die 'alten' Funktionen (also select...) nicht mit den MFC Klassen zusammenarbeiten, oder hab ich da einen Denkfehler gemacht?



  • Du darfst keinen Socket erstellen da es den schon gibt.

    AfxSocketInit(NULL);
        CSocket sockRecv;
        sockRecv.Create();
        sockRecv.Connect("192.168.1.10", 5193);
        sockRecv.Send("Ich sende", 9);
    

Anmelden zum Antworten