IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Envoi de données via socket


Sujet :

Windows Forms

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 39
    Points : 32
    Points
    32
    Par défaut Envoi de données via socket
    Bonjour, je vous soumet mon nouveau problème de socket.
    La connexion s'établit correctement par contre je reste bloqué sur le read



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    Imports System
    Imports System.Net
     
     
    Module Module1
     
     
        Public Class Client
            Shared Sub Main()
     
                Try
     
                    Dim enc As System.Text.Encoding = System.Text.Encoding.UTF8
     
                    Dim host As String = "10.120.96.115"
                    Dim port As Integer = 5011
                    addresse = IPAddress.Parse(host)
                    Dim tcp As Sockets.TcpClient
                    tcp = New Sockets.TcpClient()
                    tcp.Connect(addresse, port)
     
                    Dim ns As Sockets.NetworkStream
                    ns = tcp.GetStream()
     
                    Dim sendMsg As String = "Toto a soif"
                    If sendMsg = "" Then
                        tcp.Close()
                        Return
                    End If
                    Dim sendBytes As Byte() = enc.GetBytes(sendMsg)
                    ns.Write(sendBytes, 0, sendBytes.Length)
     
                    Dim ms As New System.IO.MemoryStream
                    Dim resBytes(256) As Byte
                    Dim resSize As Integer
                    If ms.CanRead Then
                        Do
                            resSize = ms.Read(resBytes, 0, resBytes.Length)
                            If resSize = 0 Then
                                Return
                            End If
                            ms.Write(resBytes, 0, resSize)
                        Loop While ns.DataAvailable
                        Dim resMsg As String = enc.GetString(ms.ToArray())
                    Else
                        MsgBox("le network stream ne peut pas être read")
                    End If
                    ms.Close()
     
                    tcp.Close()
     
                Catch ex As Exception
                    Dim a As Int16
                    a = a + 1
     
                End Try
            End Sub
        End Class
     
        Class Server
            Public Shared Sub Main()
                Dim enc As System.Text.Encoding = System.Text.Encoding.UTF8
     
                Dim host As String = "10.120.96.176" '"localhost"
                Dim port As Integer = 5013
                addresse2 = IPAddress.Parse(host)
     
                '        Dim ipAdd As System.Net.IPAddress = System.Net.Dns.Resolve(host).AddressList(0)
                Dim listener As New System.Net.Sockets.TcpListener(addresse2, port)
                listener.Start()
     
                Dim tcp As System.Net.Sockets.TcpClient = listener.AcceptTcpClient()
                Dim ns As System.Net.Sockets.NetworkStream = tcp.GetStream()
     
                Dim ms As New System.IO.MemoryStream
                Dim resBytes(256) As Byte
                Dim resSize As Integer
                Do
                    resSize = ms.Read(resBytes, 0, resBytes.Length)
                    If resSize = 0 Then
                        Return
                    End If
                    ms.Write(resBytes, 0, resSize)
                Loop While ns.DataAvailable
                Dim resMsg As String = enc.GetString(ms.ToArray())
                ms.Close()
                Console.WriteLine(resMsg)
     
                Dim sendMsg As String = resMsg.Length.ToString() ' 
                Dim sendBytes As Byte() = enc.GetBytes(sendMsg)
                ns.Write(sendBytes, 0, sendBytes.Length)
     
                tcp.Close()
                listener.Stop()
            End Sub
        End Class
     
     
    End Module

  2. #2
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Merci d'utiliser les balises code et puis va ce site, il ya un excellent tutos sur les sockets de Webman

Discussions similaires

  1. échange donnée via Socket
    Par jaussiba dans le forum Langage
    Réponses: 9
    Dernier message: 03/06/2008, 11h17
  2. [cURL] connexion SSL sur un serveur et envoi de données via POST.
    Par Tongs dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 07/02/2008, 14h29
  3. [SQL] Pb Sql lors de l envoie des données via un formulaire
    Par xtiand4 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 12/06/2006, 14h18
  4. erreur lors de l'envoie de donné via les socket.
    Par poporiding dans le forum C++
    Réponses: 1
    Dernier message: 23/05/2006, 14h23
  5. Envoi des données via mail
    Par zorba49 dans le forum ASP
    Réponses: 4
    Dernier message: 10/04/2006, 14h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo