damd
Messages postés121Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention 8 août 2008
-
7 nov. 2002 à 10:53
BasicInstinct
Messages postés1470Date d'inscriptionmardi 5 février 2002StatutMembreDernière intervention20 octobre 2014
-
8 nov. 2002 à 12:05
salut a tous
j'ai un bug dans mon programme : je recois des infos par le port serie et j'identifie le texte avec un select case. cependant, au cours d'un envoi, il y a un caractere aleatoire qui est generer par l'exterieur. je ne peux dond pas identifier ma chaine de caracteres.
j'ai deja ecris un message la dessus et on m'avais dis d'utiliser un tableau ou de faire un left.
mais ca ne marche pas et je me vois mal ecrire un case pour tous les caracteres du code ascii.
donc j'aurai voulu remplacer ce caractere par autre chose (un ? ou # par exemple, car quelqu'un m'avais dit que cela corespondait a un caractere ou un chiffre, mais ca ne marche pas)
j'ai essayer aussi de mettre des "ou" dans le case, mais ca ne fonctionne pas non plus (chr(40) or chr(41) or...)
donc si quelqu'un a une solution
damd
Messages postés121Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention 8 août 2008 7 nov. 2002 à 13:40
le texte que je recoit est :
"fin du parametrage
ok
veuillez vous deconnecter"
le caractere se situe apres "fin du parametrage" et la plupars du temps c'est : m ou ÿ ou þ ou ý et des fois c'en est un autre.
Vous n’avez pas trouvé la réponse que vous recherchez ?
BasicInstinct
Messages postés1470Date d'inscriptionmardi 5 février 2002StatutMembreDernière intervention20 octobre 201412 7 nov. 2002 à 13:59
if left(MaChaine,len(fin du parametrage)="fin du parametrage" then MaChaine="fin du parametrage" & right(Machaine,len(MaChaine)-len("fin du parametrage")-1)
damd
Messages postés121Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention 8 août 2008 7 nov. 2002 à 16:31
ton idee est tres bonne et je suis persuade que ca aurai fonctionné car j'utilise l'instruction left pour un autre probleme.
mais en fait j'ai oublie de te dire que des fois, il n'envoie rien.
donc dans ce cas la, ca posera probleme parce que c'est un autre caractere qui va etre omis.
damd
Messages postés121Date d'inscriptionvendredi 11 octobre 2002StatutMembreDernière intervention 8 août 2008 7 nov. 2002 à 16:31
ton idee est tres bonne et je suis persuade que ca aurai fonctionné car j'utilise l'instruction left pour un autre probleme.
mais en fait j'ai oublie de te dire que des fois, il n'envoie rien.
donc dans ce cas la, ca posera probleme parce que c'est un autre caractere qui va etre omis.
BasicInstinct
Messages postés1470Date d'inscriptionmardi 5 février 2002StatutMembreDernière intervention20 octobre 201412 8 nov. 2002 à 12:05
dans ce cas la, essaie en rajoutant
if mid(Machaine,len("fin du parametrage")+1,2)<>Vbcrlf then
...
histoire de controler que les 2 caracteres apres "fin du parametrage" soit Vbcrlf
=> si c pas le cas, on supprime le caractere en trop.
VbCrLf a 1 taille de 2 caractères, car correspond en fait a chr(13) + chr(10)