Socket sans fenêtre

CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 - 16 oct. 2004 à 11:49
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 - 16 oct. 2004 à 18:55
Comment faire (avec exemple concret si possible) pour recevoir des messages de sockets (fd_recv, fd_connect, fd_accept) sans avoir de fenêtre (et sans créer de fenêtre invisible à chaque fois car je veux faire environ une centaine de sockets) ?

CyberP,
Celui qui dit que toute question a une réponse

12 réponses

DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
16 oct. 2004 à 12:18
En gros si je comprend bien tu veux créer une fenetre par socket et que chacune de ces fenetres reste invisible ?

Shell
0
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 2
16 oct. 2004 à 12:30
Non je ne veux justement pas faire ça

Je veux créer environ une centaine de sockets, donc pas question de faire une fenêtre à chaque fois (ça utiliserait trop de mémoire) donc je demande s'il y a un autre moyen de savoir quand une connexion reçoit des données, est connectée, etc sans utiliser de fenêtre (et donc sans utiliser la fonction WSAAsyncSelect() qui utilise des fenêtres)

CyberP,
Celui qui dit que toute question a une réponse
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
16 oct. 2004 à 12:38
Et sur 1 seule fenetre on ne peut pas ssavoir de quel socket vient la notification ?
Faudrait que aardman passe par ici pour eclaircir ce point.

ciao...
BruNews, MVP VC++
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
16 oct. 2004 à 12:42
Mais si, dans la wndProc c'est wParam qui identifie le socket donc 1 seule fenetre suffit.

ciao...
BruNews, MVP VC++
0

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

Posez votre question
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
16 oct. 2004 à 12:54
WSAAsyncSelect utilises des fenetres ???
Ca veut rien dire ce que tu dis.
WSAAsynSelect, se sert de ta fonction de CallBack rien de plus.

Puis pour ton histoire de socket, tu peux tout simplement créer une appli en mode console avec une fonction de CallBack pour traiter tes messages, et tu déclares un tableau de 100 sockets.

Après je vois pas ou sa peut poser problème.

Shell
0
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 2
16 oct. 2004 à 12:58
Oui mais j'ai créé une classe par utilisateur (donc par socket), une fois que j'ai utilisé WSAAsyncSelect, j'ai le wParam et après ? Comment je fais pour savoir à quelle socket correspond quel numéro ?! Des numéros sont donnés automatiquement ? Dans ce cas, comment les récupérer ?

WSAAsyncSelect demande un HWND en paramètre

CyberP,
Celui qui dit que toute question a une réponse
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
16 oct. 2004 à 13:20
Quand c'est comme ca MSDN est ton amie!

Shell
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
16 oct. 2004 à 14:40
Va voir ici, tu trouveras toutes les fonctions qu'il existe concernant les sockets :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winsock/winsock/winsock_functions.asp

Shell
0
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 2
16 oct. 2004 à 18:02
Non mais j'ai déjà regardé le msdn
Et en ce qui concerne le wParam ils en disent pas plus

CyberP,
Celui qui dit que toute question a une réponse
0
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 2
16 oct. 2004 à 18:29
En faisant des tests j'ai trouvé qu'il suffisait de faire wParam == socket

CyberP,
Celui qui dit que toute question a une réponse
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
16 oct. 2004 à 18:39
C'est pourtant ce que je t'avais dit des le debut il me semble.

ciao...
BruNews, MVP VC++
0
CyberP Messages postés 283 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 4 juillet 2007 2
16 oct. 2004 à 18:55
"c'est wParam qui identifie le socket"
Je n'avais pas compris que leur valeurs seraient égales

CyberP,
Celui qui dit que toute question a une réponse
0
Rejoignez-nous