Rechercher : dans
Par :

[build Error] [serveur.exe] Error 1

Dernière réponse le 18 jan 2008 à 22:48:19 taha, le 9 mai 2005 à 02:57:36 
 Signaler ce message aux modérateurs

Bonjour a tout le monde , je tien a féliciter toutes les personnes responsables pour ce site, merci davance ,pour resoudre mon probleme ,
voila ,
je code un serveur windows en C , sous dev cpp ,
voila mon code


#include "stdio.h"
#include "winsock2.h"// pour les fonctions socket
#include <cstdio> // Pour les Sprintf

#pragma comment(lib,"ws2_32.lib")

WSADATA initialisation_win32; // Variable permettant de récupérer la structure d'information sur l'initialisation
int erreur; // Variable permettant de récupérer la valeur de retour des fonctions utilisées
int tempo; // Variable temporaire de type int
int nombre_de_caractere; // Indique le nombre de caractères qui a été reçu ou envoyé
char buffer[65535]; // Tampon contenant les données reçues ou envoyées
SOCKET id_de_la_socket; // Identifiant de la socket
SOCKET id_de_la_nouvelle_socket; // Identifiant de la nouvelle socket
SOCKADDR_IN information_sur_la_source; // Déclaration de la structure des informations lié à l'écoute

int main (int argc, char* argv[])
{
printf("\nBonjour, vous etes du cote serveur.\n");

// ********************************************************
// Initialisation de Winsock
// ********************************************************
erreur=WSAStartup(MAKEWORD(2,2),&initialisation_win32);
if (erreur!=0)
printf("\nDesole, je ne peux pas initialiser Winsock du a l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nWSAStartup : OK");

id_de_la_socket=socket(AF_INET,SOCK_STREAM,0);
if (id_de_la_socket==INVALID_SOCKET)
printf("\nDesole, je ne peux pas creer la socket du a l'erreur : %d",WSAGetLastError());
else
printf("\nsocket : OK");

tempo=1;
erreur=setsockopt(id_de_la_socket,IPPROTO_TCP,TCP_NODELAY,(char *)&tempo,sizeof(tempo));
if (erreur!=0)
printf("\nDesole, je ne peux pas configurer cette options du à l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nsetsockopt : OK");

information_sur_la_source.sin_family=AF_INET;
information_sur_la_source.sin_addr.s_addr=INADDR_ANY; // Ecoute sur toutes les IP locales
information_sur_la_source.sin_port=htons(33333); // Ecoute sur le port 33333
erreur=bind(id_de_la_socket,(struct sockaddr*)&information_sur_la_source,sizeof(information_sur_la_source));
if (erreur!=0)
printf("\nDesole, je ne peux pas ecouter ce port : %d %d",erreur,WSAGetLastError());
else
printf("\nbind : OK");


erreur=99; // Initiation de erreur pour être sur que l'on va rentrer dans la boucle
while(erreur!=0) // Boucle tant qu'une demande de session (SYN) tcp n'a pas été reçu
erreur=listen(id_de_la_socket,1);
printf("\nlisten : OK");


printf("\nAttente de la reception de demande d'ouverture de session tcp (SYN)");
tempo=sizeof(information_sur_la_source); // Passe par une variable afin d'utiliser un pointeur
id_de_la_nouvelle_socket=accept(id_de_la_socket,(struct sockaddr*)&information_sur_la_source,&tempo);
if(id_de_la_nouvelle_socket==INVALID_SOCKET)
printf("\nDesole, je ne peux pas accepter la session TCP du a l'erreur : %d",WSAGetLastError());
else
printf("\naccept : OK");

nombre_de_caractere=recv(id_de_la_nouvelle_socket,buffer,1515,0);
if (nombre_de_caractere==SOCKET_ERROR)
printf("\nDesole, je n'ai pas recu de donnee");
else
{
buffer[nombre_de_caractere]=0; // Permet de fermer le tableau après le contenu des data, car la fonction recv ne le fait pas
printf("\nVoici les donnees : %s",buffer);
}

erreur=shutdown(id_de_la_nouvelle_socket,2); // 2 signifie socket d'émission et d'écoute
if (erreur!=0)
printf("\nDesole, je ne peux pas fermer la session TCP du a l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nshutdown : OK");


erreur=closesocket(id_de_la_nouvelle_socket);
if (erreur!=0)
printf("\nDesole, je ne peux pas liberer la socket du a l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nclosesocket : OK");
erreur=closesocket(id_de_la_socket);
if (erreur!=0)
printf("\nDesole, je ne peux pas liberer la socket du a l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nclosesocket : OK");

erreur=WSACleanup(); // A appeler autant de fois qu'il a été ouvert.
if (erreur!=0)
printf("\nDesole, je ne peux pas liberer winsock du a l'erreur : %d %d",erreur,WSAGetLastError());
else
printf("\nWSACleanup : OK");
}
------------
jai resoulu des probelemes de linkage avant ,
mais la jai un pti souci ,
mon erreur est
D:\Documents and Settings\..\serveur\Makefile.win [Build Error] [serveur.exe] Error 1
il arrive pas a compiler , cela est du o linkage encore ,jai trop chercher sur ce type derreur , jai essayé dinclur bcp de trucs dans les
link , mais rien , tjs rien
voila
peace
a plus:::::::::))))

Meilleures réponses pour « [build Error] [serveur.exe] Error 1 » dans :
Svchost - svchost.exe Voirsvchost - svchost.exe Le processus svchost.exe (svchost signifiant Service Host Process) est un processus générique de Windows 2000/XP servant d'hôtes pour les autres processus dont le fonctionnement repose sur des librairies dynamiques (DLLs). Il...
Rundll32 - rundll32.exe Voirrundll32 - rundll32.exe Le processus rundll32.exe (rundll32 signifiant Run a DLL as a 32-bit application) est un processus générique de Windows NT/2000/XP servant à charger les librairies dynamiques (DLLs) en mémoire afin de les rendre...
Services - services.exe Voirservices - services.exe Le processus services.exe (Windows Service Controller) est un processus générique de Windows NT/2000/XP permettant de reconnaître et d'adapter les modifications matérielles du système sans intervention de l'utilisateur. Le...

1

clakclak, le 17 jun 2007 à 12:46:02

Pareil, c pas pourquoi..

Répondre à clakclak

2

clakclak, le 17 jun 2007 à 12:53:52

Deplus y a dix minute je compilais l'exe sans erreu, maintenant ça me fait ça.

Trop fluctuant

Répondre à clakclak

3

clakclak, le 17 jun 2007 à 13:19:05

Ps: projet > option projet > libraire > dans les menu.

Répondre à clakclak

4

 clakclak, le 17 jun 2007 à 13:19:32
  • +1

J'ai trouvé.
Si tu a changer ton projet de répertoire, tu dois changer le chemin des repertoire de tes librairies aussi.

Moi j'avais mon projet dans c:\dev-c++\projet.dev
donc la lien de librairie est : /lib/libwsock32.a

Mais apré j'ai mis mon projet.dev dans c:\dev-c++\projet\projet.dev
donc le lien de librairie devient : ../lib/libwsock32.a

Voilà , vérifie, pour moi ça a marcher.
Car c'est un putain de connerie derreur sa mere.

Répondre à clakclak
Collection CommentÇaMarche.net