[Contrôle winsock] en VB
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonsoir,
Je suis en train d'apprendre l'utilisation du_ contrôle winsock en visual basic en faisant une petite application client/serveur très basique.
Lorsque que je met l' IP locale cela marche bien je peux envoyer et recevoir des données et la connexion s'effectue instantanément. En revanche quand je met l'adresse IP d'un ami (pour effectuer le test) ; IP qu'il m'a donné bien sur en temps réel, la connexion ne se fait pas... Quelqu'un à une idée avant que je poste mon code ?
Merci par avance.
Je suis en train d'apprendre l'utilisation du_ contrôle winsock en visual basic en faisant une petite application client/serveur très basique.
Lorsque que je met l' IP locale cela marche bien je peux envoyer et recevoir des données et la connexion s'effectue instantanément. En revanche quand je met l'adresse IP d'un ami (pour effectuer le test) ; IP qu'il m'a donné bien sur en temps réel, la connexion ne se fait pas... Quelqu'un à une idée avant que je poste mon code ?
Merci par avance.
A voir également:
- [Contrôle winsock] en VB
- Vb - Télécharger - Langages
- Fan controle - Télécharger - Optimisation
- Controle parental disney plus - Guide
- Vb cable - Télécharger - Audio & Musique
- Controle parental sur pc - Guide
4 réponses
Bonjour,
Avant de poster ton code, il faudrait décrire d'avantage ton problème, afin que l'on puisse diagnostiquer.
"la connexion ne se fait pas" --> c'est à dire ?
Quel est l'erreur ?
Quel appel de quelle fonction ne fonctionne pas ?
Quel est le code retour obtenu lors de l'appel à cette fonction ?
Que dit la documentation Winsock à propos de ce code retour ?
Tu tombes dans un genre de timeout, ou alors l'erreur est instantanée ?
D'avance, merci pour ces précisions.
Cordialement,
Marc.
Avant de poster ton code, il faudrait décrire d'avantage ton problème, afin que l'on puisse diagnostiquer.
"la connexion ne se fait pas" --> c'est à dire ?
Quel est l'erreur ?
Quel appel de quelle fonction ne fonctionne pas ?
Quel est le code retour obtenu lors de l'appel à cette fonction ?
Que dit la documentation Winsock à propos de ce code retour ?
Tu tombes dans un genre de timeout, ou alors l'erreur est instantanée ?
D'avance, merci pour ces précisions.
Cordialement,
Marc.
Merci bien de me proposer ton soutient.
Et bien le problème est que je n'ai aucune erreur, aucun message. En local la connexion est instantanée et les échanges fonctionnent. Mais avec une autre Ip je n'ai pas le message qui me signe la connexion établie (message que j'ai programmé dans l'évènement "windock_connect").
Une idée ?
Et bien le problème est que je n'ai aucune erreur, aucun message. En local la connexion est instantanée et les échanges fonctionnent. Mais avec une autre Ip je n'ai pas le message qui me signe la connexion établie (message que j'ai programmé dans l'évènement "windock_connect").
Une idée ?
Je poste mon code malgré tout :
*** SERVEUR ***
*** CLIENT ***
Si cela peut aiguiller l'un d'entre vous...
*** SERVEUR ***
Option Explicit 'w est le nom du contôle winsock Private Sub bouton_quitter_Click() w.Close w.LocalPort = 0 End End Sub Private Sub Form_Load() w.Close w.LocalPort = 0 w.LocalPort = 4567 w.RemotePort = 4568 w.Listen End Sub Private Sub Form_Terminate() w.Close w.LocalPort = 0 End Sub Private Sub w_Close() Call Form_Load End Sub Private Sub w_ConnectionRequest(ByVal requestID As Long) w.Close w.Accept requestID End Sub Private Sub w_DataArrival(ByVal bytesTotal As Long) Dim données As String w.GetData données If données = "message" Then MsgBox "test", vbExclamation, "Titre" End If End Sub
*** CLIENT ***
Option Explicit Private Sub bouton_connexion_Click() w.Close w.RemotePort = 0 w.LocalPort = 0 w.Connect "XX.XX.XX.XX", 4567 Timer1.Enabled = True End Sub Private Sub bouton_déconnexion_Click() w.Close w.RemotePort = 0 End Sub Private Sub bouton_message_Click() w.SendData "message" End Sub Private Sub Timer1_Timer() If w.State <> 7 Then MsgBox "Trop long !!!" Call bouton_déconnexion_Click End If Timer1.Enabled = False End Sub Private Sub w_Connect() MsgBox "Connexion réussie", vbInformation End Sub Private Sub w_ConnectionRequest(ByVal requestID As Long) w.Close w.Accept requestID End Sub Private Sub w_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean) MsgBox Description End Sub
Si cela peut aiguiller l'un d'entre vous...