Perdu dans les soket (WSAAsyncSelect,GUI)

Suisse00 Messages postés 83 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 12 octobre 2005 - 23 déc. 2003 à 03:40
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 - 24 déc. 2003 à 01:45
En fait j'essai de faire un serveur DOS... mais pour utiliser la fonction WSAAsyncSelect je dois être en GUI dans voila ma question !

Comment créer une sorte de fenêtre invisible pour gérer les action de WSAAsyncSelect (le 2e paramètre référe a une fenêtre) sans pour autant créer un dialog ou fenêtre (laisser la fenêtre "DOS") et pouvoir gérer les switch(msg){ et compagnie !

Merci d'avance de votre réponce

SuIsSe

8 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
23 déc. 2003 à 04:15
Salut,
Ben tu crée une fenetre invisible normale avec CreateWindow(...) sauf qu'elle ne servira qu'a traiter les messages d'evenement socket.
0
cs_Manson Messages postés 137 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 30 septembre 2004
23 déc. 2003 à 08:43
Salut,

tu es necessairement oblige d'utilise WSAAsyncSelect ? Car tu pourrais tres facilement utiliser select(). Et ca marchera aussi bien.

Arno
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
23 déc. 2003 à 17:07
Salut,
En effet je pense aussi qu'utiliser le modele select(...) ou WSAEventSelect(...) est plus approprié pour ce type d'application.
0
Suisse00 Messages postés 83 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 12 octobre 2005
24 déc. 2003 à 00:24
Je ne sais pas, je ne connais pas select je vais cherche pour en savoir plus. Car j'ai chercher et j'avais tombé sur WSAEventSelect !

Sinon merci je cherche en a savoir plus sur select ;)

Suisse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Suisse00 Messages postés 83 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 12 octobre 2005
24 déc. 2003 à 00:31
Hum si ses pas trop demander me dire comment sa marche... msdn n'est pas très claire (enfin ou sais moi qui comprend rien -_-')

Mici d'avance :p

Suisse
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
24 déc. 2003 à 00:34
Salut,
Et il existe encore d'autres modeles differents d'utilisation des sockets.
Mais bon pour un serveur en mode console, les modeles select(...) ou WSAEventSelect(...) sont parfais.
0
Suisse00 Messages postés 83 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 12 octobre 2005
24 déc. 2003 à 01:29
heu sa m'aide pas trop :p sa serais pas possible d'expliquer comment fonctionne les 2 alors ?!?! Voila un peut plus de détaille qui seras peut être utile.

Je fait un serveur en console pour mon futur jeux, mais bon j'ai peut être l'intention d'aller au WSAEventSelect parce que je veut mettre un debug dans les 1er version...

sinon merci de bien m'expliquer comment initier et utilise select et WSAEventSelect :p

SuIsse
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
24 déc. 2003 à 01:45
Salut,
Globalement:
Select(...): tu met tout tes sockets dans une structure, et la fonction select() se charge de ne laisser dans la structure que les sockets qui on recu quelque chose.
Tout se fait dans un seul thread.

WSAEventSelect(...): Tu associe un evenement (utilisé pour la syncronisation de thread) a tes evenements reseau.
Lorsque le socket a recu quelque chose, l'evenement est signalé et donc tu peux lire ce que tu as recu.
Ici il faut au moins un deuxieme thread.

Tout est expliqué dans msdn, evidemment il faut y passer un minimum de temp pour comprendre comme cela fonctionne.
0
Rejoignez-nous