dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 5 nov. 2007 à 19:51
Advio ne peut pas compiler sous linux malheureusement.
A cette époque j'aimais bien réinventer la roue. Mais tu peut remplacer advio.h par et mettre des objet cin et cout là où il faut (il n'y a pas beaucoup de chose à changer), et ça devrait fonctionner.
Je mettrais à jour les exemples si j'y pense.
cs_metos
Messages postés168Date d'inscriptionvendredi 18 janvier 2002StatutMembreDernière intervention19 octobre 2009 5 nov. 2007 à 15:50
Salut,
quand je compile sous debian avec GCC l'exemple du client, j'ai les erreur suivante de compilation :
./advio.h:359: error: expected `)' before ‘&’ token
./advio.h:359: error: expected ‘,’ or ‘...’ before ‘&’ token
./advio.h:359: error: ‘SetHandler’ declared as function returning a function
./advio.h:359: error: expected ‘;’ before ‘)’ token
./advio.h:383: error: ISO C++ forbids declaration of ‘FILE’ with no type
./advio.h:383: error: expected ‘;’ before ‘*’ token
as-tu une idée pourquoi?
merci d'avance
dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 29 juil. 2007 à 13:24
C'est très exactement inspiré du winsock de VB qui m'a manqué lorsque je suis passé au C.
En réalité, un seul thread est créé pour chaque socket mais pas plus. C'est peut-être déjà trop dans le cas d'un gros serveur, mais pour la plupart des petites applications ce n'est pas du tout un problème.
BumpMANN
Messages postés330Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention26 janvier 2009 29 juil. 2007 à 13:23
Ah non désolé, c'est moi qui ai jamais utilisé les threads et qui sait pas lire une fenêtre de sortie -__-; Ils se terminent bien au fur et a mesure, désolé, c'est donc vraiment nikel.
BumpMANN
Messages postés330Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention26 janvier 2009 29 juil. 2007 à 13:16
En revanche je trouve que y'a un gros problème.... a plein de fonctions ça crée des threads, okay, mais ca les quitte jamais. si on fait un serveur avec ça, ça va vite exploser...
BumpMANN
Messages postés330Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention26 janvier 2009 29 juil. 2007 à 08:24
J'aime bien, simple, pratique, nikel... ca me fait penser aux winsocks de vb ^^
cs_aklim
Messages postés2Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention 3 juillet 2007 3 juil. 2007 à 14:13
OK, j'ai trouvé
Celà venait du fichier .lib qui n'était pas compatible avec VS6. J'ai tout mis dans le projet et maintenant çà roule.
Merci pour la source
cs_aklim
Messages postés2Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention 3 juillet 2007 2 juil. 2007 à 17:44
Bonjour, merci pour ta classe, c'est tout à fait ce que je recherchais. Mais j'ai actuellement un pb de link sous VS6 qui me retourne ce message :
LINK : warning LNK4098: defaultlib "LIBCMT" conflicts with use of other libs; use /NODEFAULTLIB:library
mk_socket.lib(mk_socket.obj) : error LNK2001: unresolved external symbol ___security_cookie
mk_socket.lib(mk_socket.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
socketcpp___Win32_Debug/socketcpp.exe : fatal error LNK1120: 2 unresolved externals
...
As tu idée ?
dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 23 mai 2007 à 21:40
Voila, j'ai corrigé le bogue qui causait un segfault lors de la création de thread sous linux (je suppose que c'est ce que worms4 a modifié aussi).
En prime, il devrait bientôt y avoir une nouvelle version beaucoup plus moderne et plus propre.
dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 23 mai 2007 à 21:35
Voila, j'ai corrigé le bogue qui causait un segfault lors de la création de thread sous linux (je suppose que c'est ce que worms4 a modifié aussi).
En prime, il devrait bientôt y avoir une nouvelle version beaucoup plus moderne et plus propre.
worms4
Messages postés27Date d'inscriptionjeudi 29 avril 2004StatutMembreDernière intervention20 mars 2007 20 mars 2007 à 13:33
J'ai débugguer la librairie pour qu'elle ne plante plus sous linux. ici
Et voici un exemple ou l'on trouve une version du client et du server qui compile sous nunux. ici
worms4
Messages postés27Date d'inscriptionjeudi 29 avril 2004StatutMembreDernière intervention20 mars 2007 9 mars 2006 à 11:35
Salut serait t'il possible de rajouter une petite doc du descriptif de chaque fonction de ta classe pour bien comprendre se qu'elle font
noSnoR
Messages postés62Date d'inscriptionsamedi 5 mars 2005StatutMembreDernière intervention11 avril 2006 6 janv. 2006 à 20:58
Barf, désolé pour le post inutile, je n'avais pas pris le temps de lire le dernier post...
noSnoR
Messages postés62Date d'inscriptionsamedi 5 mars 2005StatutMembreDernière intervention11 avril 2006 6 janv. 2006 à 20:54
Pareil que Katsankat, un petit exemple m'aiderait assez...
dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 6 janv. 2006 à 15:47
j'ai rajoutté dans l'archive 3 petit progs d'exemple : un programme pour interoger le serveur whois des noms en .eu et un petit client et serveur de chat. Pour ces dernier néanmoins il faut réécrire la gestions des entrées sorties avec iostream ou équivalent pour ceux qui voudrait le compilé sous linux, ou sous windows mais sans la lib advio.
katsankat
Messages postés571Date d'inscriptionvendredi 30 décembre 2005StatutMembreDernière intervention12 juillet 20123 6 janv. 2006 à 06:33
Salut, cool la source.
Ca compile bien sous linux, en remplaçant return NULL; par return 0; à la fin de mk_socket.cpp (la fonction doit retourner un entier long non signé mais null est un pointeur).
Aurais-tu un exemple d' utilisation de la classe? J'ai du mal avec les callbacks.
dnob700
Messages postés44Date d'inscriptionmardi 17 février 2004StatutMembreDernière intervention 5 novembre 2007 3 janv. 2006 à 20:01
effectivement, j'était passé sur ta source en plus, mais je sais pas pourquoi elle m'a semblé plus compliqué, alors qu'elle fait effectivement à peu près la même chose que la mienne et tout aussi simplement (à l'exception du multithreading).
Pour ma phrase ce que je veux dire c'est que ça compile correctement sur les deux plateformes. Et la bibliothèque fonctionne correctement sous windows, donc je suppose qu'elle doit fonctionner correctement sous linux.
cs_jean84
Messages postés449Date d'inscriptionjeudi 26 août 2004StatutMembreDernière intervention 5 mars 2009 3 janv. 2006 à 12:31
> Je sais bien qu'il y en a d'autre sur le site, mais je n'en ais pas vu qui soit à la fois très simple et qui permette d'écrire des clients et des serveurs. <
T'as pas du bien chercher alors parce que moi j'en ai fait une qui correspond exactement a ces crtiteres... m'enfin bon ....
Pour le code, le fait de compiler sous linux et windows et sympa mais je comprend pas quand tu dis "Je n'ais pas pu beaucoup tester le fonctionnement de la bibliothèque sous linux. Normallement ça compile sans problème, et vu que ça marche sous windows il ne devrait pas y avoir de problèmes." Sa compile sans probleme vu que sa marche sous windows ??? j'avoue ne pas comrendre le sens de ta phrase....
je te met 7/10 car le source est bien commente et est ingenieux.
@++ et bonne continuation !
5 nov. 2007 à 19:51
A cette époque j'aimais bien réinventer la roue. Mais tu peut remplacer advio.h par et mettre des objet cin et cout là où il faut (il n'y a pas beaucoup de chose à changer), et ça devrait fonctionner.
Je mettrais à jour les exemples si j'y pense.
5 nov. 2007 à 15:50
quand je compile sous debian avec GCC l'exemple du client, j'ai les erreur suivante de compilation :
./advio.h:359: error: expected `)' before ‘&’ token
./advio.h:359: error: expected ‘,’ or ‘...’ before ‘&’ token
./advio.h:359: error: ‘SetHandler’ declared as function returning a function
./advio.h:359: error: expected ‘;’ before ‘)’ token
./advio.h:383: error: ISO C++ forbids declaration of ‘FILE’ with no type
./advio.h:383: error: expected ‘;’ before ‘*’ token
as-tu une idée pourquoi?
merci d'avance
29 juil. 2007 à 13:24
En réalité, un seul thread est créé pour chaque socket mais pas plus. C'est peut-être déjà trop dans le cas d'un gros serveur, mais pour la plupart des petites applications ce n'est pas du tout un problème.
29 juil. 2007 à 13:23
29 juil. 2007 à 13:16
29 juil. 2007 à 08:24
3 juil. 2007 à 14:13
Celà venait du fichier .lib qui n'était pas compatible avec VS6. J'ai tout mis dans le projet et maintenant çà roule.
Merci pour la source
2 juil. 2007 à 17:44
LINK : warning LNK4098: defaultlib "LIBCMT" conflicts with use of other libs; use /NODEFAULTLIB:library
mk_socket.lib(mk_socket.obj) : error LNK2001: unresolved external symbol ___security_cookie
mk_socket.lib(mk_socket.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
socketcpp___Win32_Debug/socketcpp.exe : fatal error LNK1120: 2 unresolved externals
...
As tu idée ?
23 mai 2007 à 21:40
En prime, il devrait bientôt y avoir une nouvelle version beaucoup plus moderne et plus propre.
23 mai 2007 à 21:35
En prime, il devrait bientôt y avoir une nouvelle version beaucoup plus moderne et plus propre.
20 mars 2007 à 13:33
Et voici un exemple ou l'on trouve une version du client et du server qui compile sous nunux. ici
9 mars 2006 à 11:35
6 janv. 2006 à 20:58
6 janv. 2006 à 20:54
6 janv. 2006 à 15:47
6 janv. 2006 à 06:33
Ca compile bien sous linux, en remplaçant return NULL; par return 0; à la fin de mk_socket.cpp (la fonction doit retourner un entier long non signé mais null est un pointeur).
Aurais-tu un exemple d' utilisation de la classe? J'ai du mal avec les callbacks.
3 janv. 2006 à 20:01
Pour ma phrase ce que je veux dire c'est que ça compile correctement sur les deux plateformes. Et la bibliothèque fonctionne correctement sous windows, donc je suppose qu'elle doit fonctionner correctement sous linux.
3 janv. 2006 à 12:31
T'as pas du bien chercher alors parce que moi j'en ai fait une qui correspond exactement a ces crtiteres... m'enfin bon ....
Pour le code, le fait de compiler sous linux et windows et sympa mais je comprend pas quand tu dis "Je n'ais pas pu beaucoup tester le fonctionnement de la bibliothèque sous linux. Normallement ça compile sans problème, et vu que ça marche sous windows il ne devrait pas y avoir de problèmes." Sa compile sans probleme vu que sa marche sous windows ??? j'avoue ne pas comrendre le sens de ta phrase....
je te met 7/10 car le source est bien commente et est ingenieux.
@++ et bonne continuation !