Hello ! ^^
J´ai un petit problème avec Winsock...J´ai fait un petit serveur, qui fonctionne bien ( testé avec Telnet), et j´aurais aimé faire un client pour aller avec ( logique
. Voilà la fonction qui s´occupe d´initialiser winsock et de se connecter ( à l´adresse 127.0.0.1:150) :
WSADATA WsaDat;
SOCKET Socket;
SOCKADDR_IN SockAddr;
void InitWinsock(void) {
if ( WSAStartup(MAKEWORD(2, 2), &) ! = 0)
{
printf("WSA Initialization failed.");
exit(1);
}
Socket = socket(AF_INET, SOCK_STREAM, 0);
if ( Socket == INVALID_SOCKET)
{
printf("Socket creation failed.");
exit(1);
}
//Connection de type TCP
SockAddr.sin_family = AF_INET;
//Adresse de connection : 127.0.0.1 ( locale), port 150
SockAddr.sin_addr.S_un.S_un_b.s_b1 = 127;
SockAddr.sin_addr.S_un.S_un_b.s_b2 = 0;
SockAddr.sin_addr.S_un.S_un_b.s_b3 = 0;
SockAddr.sin_addr.S_un.S_un_b.s_b4 = 1;
SockAddr.sin_port = 150;
if ( connect(Socket, ( SOCKADDR *)(&), sizeof(SockAddr)) ! = 0)
{
printf("Failed to establish connection with server.");
exit(1);
}
}
J´ai inclus winsock.h ainsi et j´ai linké mrp.lib et wsock32.lib ( quelquechose comme ça ^^) . .. Ah oui, j´en oublierais presque de dire quel est mon problème ^^
Je pense que vous vous en doutiez, mais ça ne marche pas :P " l´erreur" se produit au niveau de la connection ( quand je regarde les logs, l´initiailisation de WSA et du socket a fonctionné) . .. Il n´y a aucune erreur de compilation. Le programme se lance, essai de se connecter ( rapidement si je met 127.0.0.1 comme adresse et lentement si je met autre chose, ce qui laisse entendre qu´il y a quand même effectivement bien une forme de communication entre le serveur et le client...mais peut-être que je me trompe sur l´interpretation ^^), et se ferme ( puisque j´ai mis un " exit(1)" si la connection echoue. Du côté du serveur, il n´y a pas eu d´evenement " Connection_Request".
Voilà ^^ J´espère avoir été suffisament précis ^^ Merci d´avance !