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

VB.NET Discussion :

Liaison serveur -> client


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 59
    Par défaut Liaison serveur -> client
    kikoo
    quelqu'un aurait-il de l'experience en reseau via .net ?

    car la j'ai un probleme qui m'empeches de finir mon projet
    j'ai un logiciel server et un logiciel client
    chacun d'entre eux demarre un "server d'ecoute" du reseau et traite les infos si il y en a

    probleme, j'arrive a communiquer dans le sens client->server mais pas l'inverse alors que le code est copier/coller et seul les adresses IP sont changer en consequence

    si quelqu'un a une idee ca serait cool

    j'ai meme essayer de changer les ports mais rien a faire :s

  2. #2
    Membre Expert
    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
    Par défaut
    C'est bizarre, donne ton code des deux cotés

    Ton port est bien le meme des deux cotés ? Sinon as tu un routeur ? c'est peut etre lui qui bloque la connexion !
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 59
    Par défaut
    pour les routeurs oui il y en a je suis dans une universite
    mais j'ai demander et normallement ils ne me bloquent en rien comme je travaille avec 2 ordis cote a cote, j'en suis pas tres sur dans le sens ou les adresses IP different "172.16.11.255" et "172.16.10.237"

    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
    100
    101
    102
    103
    104
    105
     
        Public Class server
            Public Shared ipadress = System.Configuration.ConfigurationSettings.AppSettings("ipadress")
            Public Shared port = System.Configuration.ConfigurationSettings.AppSettings("port")
            Public Shared arret As Boolean = False
     
            Public Shared Sub Main()
                Dim erreurPort As Boolean = False
                Dim E As Exception = Nothing
     
                ' creation of listening service
                Dim ecoute As TcpListener = Nothing
                Dim nbClients As Integer = 0
                Try
                    ecoute = New TcpListener(IPAddress.Parse(ipadress), port)
                    ' start service
                    ecoute.Start()
                    ' reading loop
                    Dim Cust As TcpClient = Nothing
                    While True Or arret = True
                        ' wait information
                        Cust = ecoute.AcceptTcpClient()
                        ' when customer send something, server create one new thread which manage the request
                        nbClients += 1
                        Dim tache As Thread = New Thread(New ThreadStart(AddressOf New CustomerStatement(Cust, nbClients).Run))
                        tache.Start()
                    End While
     
     
                Catch ex As Exception
                    erreur("Error : " + ex.Message, 3)
                End Try
                ' fin du service
                ecoute.Stop()
            End Sub
    end class
     
        Public Class CustomerStatement
            Private sql As String
            Private Cust As TcpClient ' our customer
            Private numClient As Integer ' customer number
            Private [IN] As StreamReader ' reading flux
            Private OUT As StreamWriter ' writting flux
            ' builder
            Public Sub New(ByVal Cust As TcpClient, ByVal numClient As Integer)
                Me.Cust = Cust
                Me.numClient = numClient
            End Sub
            ' méthode run
            Public Sub Run()
                Try
                    [IN] = New StreamReader(Cust.GetStream())
                    OUT = New StreamWriter(Cust.GetStream())
                    OUT.AutoFlush = True
                    'statement sub
                    statement()
                    'end statement
                    Cust.Close()
                Catch e As Exception
                    errorInf("Error when the connection was closing" & e.ToString, 2)
                End Try
            End Sub
    end class
     
    Public Class SendInformation
            'send information to one customer
            Public Shared ipadress = "172.16.11.255" 
            Public Shared port = 101 
     
            Public Shared Sub Main(ByVal message As String)
                Dim client As TcpClient = Nothing ' our customer
                Dim [IN] As StreamReader = Nothing ' reading flux
                Dim OUT As StreamWriter = Nothing ' writting flux
                Dim close As Boolean = False
                Dim answer As String = Nothing
                Dim limit As Integer = 0 'limit the number of lap
     
                Try
                    'connexion with the customer
                    client = New TcpClient(ipadress, port)
                    'Creation of flux in order to communicate
                    [IN] = New StreamReader(client.GetStream())
                    OUT = New StreamWriter(client.GetStream())
                    OUT.AutoFlush = True
     
                    While (close = False Or limit = 10)
                        ' send information
                        OUT.WriteLine(message)
                        ' read answer
                        answer = [IN].ReadLine()
                        answer = answer.Substring(3, 2)
                        If answer = "99" Then
                            close = True
                        End If
                        limit += 1
                    End While
                    If limit = 10 Then
                        MessageBox.Show("Retry this action", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
                    End If
                    client.Close()
                Catch ex As Exception
                    erreur(ex.Message, 3)
                End Try
            End Sub
    end class
    port de communication client->serveur : 100
    port de communication serveur->client : 101

    merci d'avance

  4. #4
    Membre Expert
    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
    Par défaut
    Le port doit etre le meme pour la connexion serveur/client et Client/serveur
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 59
    Par défaut
    ca ne veut pas
    je viens de retenter

  6. #6
    Membre Expert
    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
    Par défaut
    Je comprends ton probleme car si le port n'est pas le meme comment veux tu que le client se connecte au serveur ? Verifie les IP sinon c'est la faute au routeur chez moi ca m'arrive très souvent !
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. liaison d'un client à un serveur existant
    Par ledawa dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 16/05/2008, 10h40
  2. Réponses: 4
    Dernier message: 16/08/2004, 17h03
  3. Client-Serveur Dcom = Client+Serveur lancés sur la machine ?
    Par Jilam dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/07/2004, 14h55
  4. Serveur Multi-clients
    Par darsky dans le forum C++Builder
    Réponses: 5
    Dernier message: 16/04/2004, 09h53
  5. Création d'un Serveur Multi Client
    Par N*E*R*D dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 16/03/2004, 17h13

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