Décodage Trame TCP/IP [Résolu]

Signaler
Messages postés
24
Date d'inscription
samedi 24 mars 2007
Statut
Membre
Dernière intervention
28 avril 2011
-
Messages postés
24
Date d'inscription
samedi 24 mars 2007
Statut
Membre
Dernière intervention
28 avril 2011
-
Salut à tous.

Voilà mon problème:

J'ai un automate qui utilise le protocole ModBus en Ethernet. Je l'interroge et il me répond.

Le souci c'est que je n'arrive pas afficher la trame qu'il m'a renvoyé. Je réussi celement à afficher un caractère spécial qui converti en hexa, correspond au premier caractère de la trame. J'ai fait une analyse avec Ethereal et voilà la trame au format Hexa:
01 00 00 00 00 1f 01 04 ...

Comment faire pour afficher toute la trame et pouvoir la convertir en hexa comme le fait Ethereal?

D'avance Merci

3 réponses

Messages postés
14675
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
4 juillet 2020
143
Bonjour

Si tu regarde l'aide, ASC te retourne le code du premier caractère de la chaine, utilises un For avec Mid$ pour tout afficher :

Dim lStr as string
lstr=""
Dim i as long

for i=1 to len(pStr) 'pStr est la chaine à lire
    lStr=lStr & " " & right$("00" & hex$(asc(mid$(pStr,i,1))),2)
Next

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
Messages postés
24
Date d'inscription
samedi 24 mars 2007
Statut
Membre
Dernière intervention
28 avril 2011

Petite correction.


Je converti le caractère en Ascii (commande Asc()) et non pas en Hexa pour obtenir le premier caractère de ma trame.


A+
Messages postés
24
Date d'inscription
samedi 24 mars 2007
Statut
Membre
Dernière intervention
28 avril 2011

merci pour ta réponse.


J'avais trouvé la même solution juste avant de lire ton message.


A+