Mise en place de socket en c sous visual c++ 6 - Programmation
Marsh Posté le 13-03-2002 à 20:51:33
http://www.sockaddr.com/ExampleSourceCode.html
Asynchronous Server (Chapter 10) - HTTPa.zip
Asynchronous mode HTTP server. Works with WinSock 1.1 or 2 and any version of Windows -- 3.1 and above.
Multi-Threaded Server (Chapter 11) - HTTPmt.zip
Multi-threaded HTTP server that uses blocking sockets, overlapped I/O and client threads to handle multiple simultaneous connections. (Requires WinSock 2)
Marsh Posté le 13-03-2002 à 20:54:32
note ami GOOGLE sera heureux de te repondre avec des mots tels que sockaddr_in, AF_INET, socket ....
Marsh Posté le 13-03-2002 à 22:38:16
Merci beaucoup a vous ...
Je sais que je vais abuser, mais si quelqu'un a des sources qui marchent sous windows pour un serveur et un client, ca me plairais bien ....
Vous pouvez m'envoyer ca a : albibak@caramail.com
C'est pour un projet, et je suis deja a la bourre, c'est pour cela ...
Par avance merci ...
Marsh Posté le 13-03-2002 à 22:53:09
tu as des sources client + serveur HTTP sur http://www.sockaddr.com/ExampleSourceCode.html .
Marsh Posté le 14-03-2002 à 17:05:50
Mais j'ai deja fais pas mal de taff dessus, et en fait, c'est juste ma connection qui deconne ....
Voici mon serveur et client, sans les declaration et les librairies bien sur ...
Si quelqu'un a une idée ... (je suis en visual c++ 6 et SOUS WINDOWS, et c'est de la prog c, et non c++ !!!!)
SERVEUR :
---------
int sock_ecoute, sock_service, lgr;
unsigned short port = VAL_PORT;
struct sockaddr_in nom;
Winsock(WSASTARTUP,NULL);
sock_ecoute = socket (AF_INET, SOCK_STREAM, 0);
if (sock_ecoute == -1)
{
MsgBox("Serveur : Mauvaise creation de socket" );
}
MsgBox("Serveur : Socket créé" );
lgr = sizeof (nom);
ZeroMemory((char *) &nom, lgr);
nom.sin_family = AF_INET;
nom.sin_port = htons(port);
nom.sin_addr.s_addr = INADDR_ANY;
if (bind (sock_ecoute, (struct sockaddr *)&nom, lgr) == -1) {
Fin ("Serveur : Nommage socket impossible" );
}
if (getsockname (sock_ecoute, (struct sockaddr *)&nom, &lgr)) {
Fin ("Serveur : Obtention du nom socket impossible" );
}
listen (sock_ecoute, 5);
while (1) {
lgr = sizeof (nom);
MsgBox("Serveur : attente de demande de conexion" );
sock_service = accept (sock_ecoute, (struct sockaddr *)&nom, &lgr);
}
MsgBox("Connecté" );
CLIENT :
--------
int sock_service, ok;
unsigned short port = VAL_PORT;
struct sockaddr_in adr;
int lgradr = sizeof (adr);
Winsock(WSASTARTUP,NULL);
sock_service = socket (AF_INET, SOCK_STREAM, 0);
if (sock_service == -1)
{
MsgBox("Client : Mauvaise creation de socket" );
}
MsgBox("Client : Socket créé" );
ZeroMemory((char *) &adr, lgradr);
adr.sin_family = AF_INET;
adr.sin_port = htons(port);
ok = connect (sock_service, (struct sockaddr *)&adr, lgradr);
if (ok == -1) {
MsgBox("Client : Mauvaise connection" );
}
MsgBox("Client : Connection" );
Le problème, est qu'il me mets mauvais connexion...
Marsh Posté le 14-03-2002 à 17:06:25
SI celui ki veut m'aider ne comprend pas quelque chose, je veux bien envoyer mes sources !!!
Marsh Posté le 14-03-2002 à 17:09:11
Autre truc, je n'ai pas préciser d'adresse ip, car je pense qu'en local, juste le port devrait suffir, sinon, comment l'inserer dans mon prog ??
Marsh Posté le 12-03-2002 à 18:40:16
Voila, je dois mettre en place un serveur et un (des plus tard) client, via des sockets, et j'aimerais votre aide ...
Quelqu'un a deja fait cela (utlisant les fonctions bind, recv, accept ...)
Par avance merci ..