Charactère NULL VB.NET [Résolu]

Messages postés
329
Date d'inscription
jeudi 20 novembre 2003
Statut
Membre
Dernière intervention
10 mai 2014
- - Dernière réponse : cs_lim
Messages postés
329
Date d'inscription
jeudi 20 novembre 2003
Statut
Membre
Dernière intervention
10 mai 2014
- 29 mai 2009 à 17:44
Bonjour,


Je dois envoyer une trame MODBUS à un appreil via une RS232. Dans cette trame il y a le charactère 00 en hexa, qui correspond au charactère NULL (Saut de ligne).

Quand je construit ma trame, je convertis mes valeurs hexa en décimal or quand j'arrive à chr(00) VB ne continue pas à ajouter les charactères qui viennent à la suite il arrête la constuction de la trame.

Exemple : Trame: 01 03 28 23 00 02 4F 87, je me retrouve avec 01 03 28 23 mais pas la suite.

Comment faire pour que je puisses intégrer le charactère NULL à ma trame (et la fin de ma trame) et l'envoyer ?

Merci pour toute l'aide que vous pourrez m'apporter.

@+
LIM
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
2859
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
26 novembre 2013
13
3
Merci
Bonjour,

Es-tu sur que la trame est incomplete ?

Si tu regarde via l'IDE de vb, en placent des points d'arret ou encore dans un TextBox ou un label, tu t'appercevera que le Chr(0), tronque les chaînes de texte au niveau de ceci, cela vient d'un problème d'affichage (ceux-ci ne gèrent pas ce type de caractère, ou ils doivent provoquer un retour à la ligne..?).

Par contre si tu utilise pour vérifier ta trame la fonction "Len", tu t'appercevera que ta chaine est au complet !

Dim Count As Integer

Count = Len(Trame) 'Met un point d'arret et vérifi si la taille de la trame correspond

@+ Mayzz

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 122 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Mayzz
Messages postés
329
Date d'inscription
jeudi 20 novembre 2003
Statut
Membre
Dernière intervention
10 mai 2014
4
0
Merci
Bonjour,

   Effectivement avec un point d'arrêt on ne voit pas tout, merci pour l'astuce je n'y avais pas pensé.

@+
LIM
Commenter la réponse de cs_lim