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 6 et antérieur Discussion :

Lecture données port


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 11
    Par défaut Lecture données port
    Bonjour,

    Après m'être connecté avec succès avec telnet sur le port 7879 ou je vois défiler les données, je cherche à faire la même chose avec VB6.

    Après avoir installé le composant winsock , je cherche à lire les données qui
    sont transmises par le port 7879.

    Même si cela est simple, étant débutant, j'ai un peu de mal avec le code à mettre en place...

    Merci pour votre aide.

    stéphane

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 351
    Par défaut
    De mémoire, il doit y avoir un événement associé au Winsock (dataarival ??) qui se déclenche lorsque des données arrivent sur le port.
    Si je me souviens bien le traitement de ces données était un peu laborieux.

  3. #3
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Par défaut
    Bonjour,

    Si tu as déjà coder quelque chose je te conseille de le partager.
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 351
    Par défaut Voilà
    Voilà j'avais écrit ça il y a quelques années. Le But était de recevoir une trame d'information sur un port envoyées par un téléphone portable.

    J'ai pas vérifié le code, j'ai juste viré les trucs un peu lourd, comme le traitement des paramétre et le traitement de la trame de données.

    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
     
    Option Explicit
        Dim Port_int As Integer
     
    Private Sub Connect_wsk_DataArrival(ByVal bytesTotal As Long)
        Dim Trame_str As String 'Reçoit la trame transmise par le module
     
        On Error GoTo ErreurTrame
     
        'lecture des données transmises
        Connect_wsk.GetData Trame_str
        'envoi d'un acquitement
        Connect_wsk.SendData "Ok"
        'traitement de la trame des données si on est connecté a la base de données
     
        'fermeture du port et remise en écoute
        Connect_wsk.Close
        Connect_wsk.LocalPort = 0
        Connect_wsk.Bind (Port_int)
        Connect_wsk.Listen
     
    Exit Sub
     
    ErreurTrame:
        MsgBox "Erreur de traitement de la trame " & vbCrLf & Err.Description
        Connect_wsk.Close
        Connect_wsk.LocalPort = 0
        Connect_wsk.Bind (Port_int)
        Connect_wsk.Listen
     
    End Sub
     
    Private Sub Connect_btn_Click()
        'Ferme le port proprement avant de se mettre à l'écoute
        Connect_wsk.Close
        Connect_wsk.LocalPort = 0
        Connect_wsk.Bind (Port_int)
        Connect_wsk.Listen
    End Sub
     
    Private Sub Connect_wsk_ConnectionRequest(ByVal requestID As Long)
        'Ferme le port avant d'accepter la connexion
        If Connect_wsk.State <> sckClosed Then Connect_wsk.Close
        Connect_wsk.Accept requestID
    End Sub
     
    Private Sub Form_Load()
     
        'Lecture des paramétres
        Port_int = 8080
        Freq_lng = 100
        'Attribue la fréquence de lecture au timer
        SurvPort_tmr.Interval = Freq_lng
     
        'Connexion à la base de données
        ConnexionBase
     
        'mise en ecoute dès le chargement de l'application
        Connect_btn_Click
     
    End Sub
     
     
    Private Sub Form_Unload(Cancel As Integer)
        'fermer proprement le port en fin d'utilisation
        Connect_wsk.Close
        Connect_wsk.LocalPort = 0
    End Sub
     
    Private Sub SurvPort_tmr_Timer()
        'Surveille l'état du port l'affiche dans la barre d'état
        'et le ferme en se remettant à l'écoute dans certains cas
        If Connect_wsk.State = 0 Then BarreInfo_stb.Panels(1) = "Deconnecté"
        If Connect_wsk.State = 1 Then BarreInfo_stb.Panels(1) = "Ouvert"
        If Connect_wsk.State = 2 Then BarreInfo_stb.Panels(1) = "A l'écoute"
        If Connect_wsk.State = 3 Then BarreInfo_stb.Panels(1) = "En attente"
        If Connect_wsk.State = 4 Then BarreInfo_stb.Panels(1) = "En cours de résolution"
        If Connect_wsk.State = 5 Then BarreInfo_stb.Panels(1) = "Résolu"
        If Connect_wsk.State = 6 Then BarreInfo_stb.Panels(1) = "Connexion en cours"
        If Connect_wsk.State = 7 Then BarreInfo_stb.Panels(1) = "Connecté"
        If Connect_wsk.State = 8 Then
            BarreInfo_stb.Panels(1) = "En cours de fermeture"
            Connect_wsk.Close
            Connect_wsk.LocalPort = 0
            Connect_wsk.Bind (Port_int)
            Connect_wsk.Listen
        End If
        If Connect_wsk.State = 9 Then
            BarreInfo_stb.Panels(1) = "Erreur"
            Connect_wsk.Close
            Connect_wsk.LocalPort = 0
            Connect_wsk.Bind (Port_int)
            Connect_wsk.Listen
        End If
    End Sub

  5. #5
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Ben si tu veux utiliser le port 7879 , faut pas lui dire d'écouter le 8080

  6. #6
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 351
    Par défaut
    Moi j'ai mis le code que j'avais fait à l'époque pour aider, c'est pas moi qui pose la question...
    En plus j'ai mis 8080 au hazard parceque dans l'original c'est un param dans un fichier INI.

  7. #7
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Oopps, mille excuses

Discussions similaires

  1. Lecture données port série
    Par lio59 dans le forum VB.NET
    Réponses: 26
    Dernier message: 24/08/2011, 00h37
  2. Lecture du port USB
    Par ArkAng3 dans le forum MFC
    Réponses: 32
    Dernier message: 02/04/2007, 09h23
  3. [C#] lecture sur port série
    Par Iokanaan dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/05/2005, 13h50
  4. Lecture de port
    Par def_jam_vendetta dans le forum C++
    Réponses: 6
    Dernier message: 01/03/2005, 17h39
  5. Réponses: 2
    Dernier message: 27/02/2003, 01h33

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