zonebleue
Messages postés73Date d'inscriptionsamedi 15 janvier 2005StatutMembreDernière intervention16 octobre 2007
-
14 févr. 2007 à 09:51
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
22 févr. 2007 à 12:34
bonjour,
je suis en train de faire un programme utilisant Winsock.
mais, meme après avoir fait winsock.close, le programme plante a la fermeture, et plante visual basic avec
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 14 févr. 2007 à 10:00
Salut,
"meme après avoir fait winsock.close, le programme plante a la fermeture" Qu est ce qui te fait dire que c'est bien Winsock qui te fait planter?
"comment arreter ca ?" Peu être en nous montrant ton code (si il n'est pas trop long non plus)
zonebleue
Messages postés73Date d'inscriptionsamedi 15 janvier 2005StatutMembreDernière intervention16 octobre 2007 15 févr. 2007 à 14:23
il est pas si petit que ça le code...
j'ai découvert que avant la connexion du WinSock, le programme plante pas rien, c'est seulement après la connexion, j'essayerai quand même de te filer un petit bout du code :
Private Sub Command1_Click()
Form2.Show 'faudra que je change le nom de la form..
End Sub
Private Sub evt_Close()
rtxtlog.Text = rtxtlog.Text & vbCrLf & "Deconnexion réalisée"
End Sub
Private Sub evt_Connect()
rtxtlog.Text = rtxtlog.Text & vbCrLf & "Connexion au serveur réalisée"
End Sub
Private Sub evt_ConnectionRequest(ByVal requestID As Long)
rtxtlog.Text = rtxtlog.Text & vbCrLf & "Demande de connexion au serveur"
End Sub
Private Sub evt_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
Dim tmp As String
If ws.State sckClosed Or ws.State sckClosing Then Exit Sub
ws.GetData tmp, vbString, bytesTotal
rtxtlog.Text = rtxtlog.Text & Chr(13) & tmp
rtxtlog.Refresh
nextSend = True
End Sub
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 15 févr. 2007 à 14:37
salut,
faudrait plus de code....
nextSend est bien déclaré en général?
la première sub, c'est un bouton?
on error resume next pour le data_arrival, çà fait que même s'il y a une erreur on va passer en true?...
tes envoies de data nécessitent un DoEvents (To, Form, etc...)
tu as beau faire un ws.close (d'ailleurs pourquoi un ws et un evt....), si on est toujours dans la sub (à cause des while) on ne l'attendra jamais.
il est préférable de jouer avec un timer plutôt que des while partout, surtout sans vérifier la réponse du serveur...
ta connection nécessite aussi un ws.close avant le connect
et enfin en quittant le formulaire il faut fermer. on peut mêem s'en assurer ainsi :
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Do
ws.Close
DoEvents
Loop Until ws.state = 0
End Sub
++
PCPT [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Vous n’avez pas trouvé la réponse que vous recherchez ?