J'essaie de créer une application MFC (client) qui se connecte à un serveur ("localhost", port 1234), le serveur répond au client et le client lit à partir de la réponse du serveur.Travailler avec des sockets dans MFC
Le serveur est en mesure de recevoir les données du client et il renvoie la réponse à la socket d'où il l'a reçu, mais je ne parviens pas à lire la réponse depuis le client.
Je crée un CAsyncSocket pour me connecter au serveur et envoyer des données et un CAsyncSocket avec des méthodes surchargées onAccet et onReceive pour lire la réponse du serveur. S'il vous plaît dites-moi ce que je fais mal. Tout d'abord, je ne vois pas où vous envoyez les données au client (sur le serveur)
class ServerSocket:public CAsyncSocket{
public:
void OnAccept(int nErrorCode){
outputBox->SetWindowTextA("RECEIVED DATA");
CAsyncSocket::OnAccept(nErrorCode);
}
};
//in ApplicationDlg I have:
socket.Create();
socket.Connect("127.0.0.1",1234);
socket.Send(temp,strlen(temp)); //this should be sending the initial message
if(!serverSocket.Create()) //this should get the response i guess...
AfxMessageBox("Could not create server socket");
if(!serverSocket.Listen())
AfxMessageBox("Could not listen to socket");
je sais que je voulais juste voir si je reçois une connexion entrante et il semble que je ne sais pas – fanq
le serveur est une autre application résidant sur localhost (ce n'est pas la même application MFC) – fanq
Voulez-vous dire que OnAccept() est pas appelé? –