Winsock

keopsk Messages postés 96 Date d'inscription jeudi 18 avril 2002 Statut Membre Dernière intervention 9 mars 2007 - 30 nov. 2004 à 18:39
keopsk Messages postés 96 Date d'inscription jeudi 18 avril 2002 Statut Membre Dernière intervention 9 mars 2007 - 1 déc. 2004 à 09:42
Bonjour tout le monde,
J'essaye de me connecter à un serveur via l'objet winsock... seulement voila .. lorsque la connection se trouve derrière l'évenement click d'un bouton de commande, la connection se fait normalement ... mais lorsque je met le même code dans une fonction à part ... la connection ne se fait pas .. le status = 6 (en attente de connection)
j'ai utilisé une boucle de 50000 itérations pour attendre un peu ... rien à faire ... toujours status = 6 après la boucle

Help me ... c'est la déprime ..

Merci à vous tous

3 réponses

AnteManoclis Messages postés 154 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 6 septembre 2007
30 nov. 2004 à 20:20
Salut Keopsk,

Je n'ai pas de réelles solutions sur ce problème, mais es-tu sûr que la fonction soit bien appelée, et si oui, as-tu vérifié si les commandes ont bien étaient éxecutées (personnelement, j'appelle une msgbox après chaque commande douteuse, histoire de voir qu'elle a bien été éxcutée)

Voilà, je sais que c'est un peu bateau, mais j'espère que ça suffira.

Tchô ;)
AnteManoclis
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
30 nov. 2004 à 21:07
Salut keopsk
Peu importe où se trouve le composant, du moment que tu fais bien référence à la forme sur lequel il est posé, ça doit fonctionner.

Dans ta boucle d'attente, as-tu bien mis un DoEvents pour laisser le système gérer les comm ?

Un exemple de connexion et d'attente de résultat de connexion ou 8 secondes maximum :
    With wskConnexion
        .Connect
        Temps = Now ' Pour TimeOut
        DoEvents    ' Attends la connexion ou 8 secondes
        Do While .State = sckConnecting And (Abs(DateDiff("s", Temps, Now)) < 8)
                            ' 0 sckClosed
                            ' 1 sckOpen
                            ' 2 sckListening
                            ' 3 sckConnectionPending
                            ' 4 sckResolvingHost
                            ' 5 sckHostResolved
                            ' 6 sckConnecting
                            ' 7 sckConnected
                            ' 8 sckClosing
                            ' 9 sckError
            DoEvents  ' <---- important
        Loop
        If .State <> sckConnected Then
            wskConnexion.Close
            ...


Vala
Jack
NB : Je ne répondrai pas aux messages privés
0
keopsk Messages postés 96 Date d'inscription jeudi 18 avril 2002 Statut Membre Dernière intervention 9 mars 2007
1 déc. 2004 à 09:42
Merci à Jack de m'avoir donné la solution ...
Merci encore à AnteManoclis pour son aide ..

à bientôt
0
Rejoignez-nous