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 :

manipulation de donnees en hexa sur vb


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 4
    Par défaut manipulation de donnees en hexa sur vb
    bonsoir a tous
    j'ai a lire des donnees a partir d`un textbox pour les traiter ulterieurement, mes problèmes sont:

    -au cours du saisie comment je peux verifier si le caractere tape est bien un parmis (123.....9ABC....F)c`est a dire un caractere referant a un code hexa?

    -apres je doit traiter ce que a ete tape comme etant hexadecimal, son decodage doit me donner une taille d`une trame(parce que je simule un transfert de paquets):
    exemple: texte saisie=1f decodage donne lataille est=31octets.

    -je dois apres enregistrer certaines donnees resultats du traitment dans un fichier txt et ce toujours en hexa et les afficher sur un msgbox en hexa aussi.
    Remarque: quand l`utilisateur tape '1' mon application doit comprendre que c`est une donnee hexa sur 8bit qui en principe s`ecrit '01'

    tout ce traitement la je l`ai fais sur c++ mais mon professeur veux le voir sur interface (pas obligatoirement en vb donc si quelqu'un a une idee comment faire en vb ou s`il connait un autre logiciel ou l`application me sera plus simple
    merci d`avance

  2. #2
    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
    Beaucoup questions pour un seul post !
    pour le controle de validité des caractères saisis

    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
    Private Sub Text1_KeyPress( KeyAscii As Integer)
      Dim Ok As Boolean
      Ok = Chr(KeyAscii) Like "[0-9A-Fa-f" & Chr(8) & "]"
      If Not Ok Then
        KeyAscii = 0
      End If
    End Sub
     
    Private Sub Text1_Validate( Cancel As Boolean)
      Dim Ok As Boolean
      Dim strTemp As String
      Dim iPnt As Integer
      If Text1 <> "" Then
        strTemp = Right("00000000" & UCase(Text1), 8)
        Text1 = strTemp
        For iPnt = 1 To 8
          If Mid(strTemp, iPnt, 1) Like "[0-9A-F]" Then
            '
          Else
            MsgBox "le champs comporte des caractères non Hexa"
            Cancel = True
            Exit For
          End If
        Next
      End If
    End Sub
    La valeur décimale se calcule avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaValeur = CLng("&H" & Tex1)
    Pour l'ecriture sur disque il va te falloir plonger dans l'aide de vb, vois la fonction open.

  3. #3
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Pour tester si les caracteres contenus dans uen textbox representent bien un code hexa, on peut faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If IsNumeric("&H" & Text1.Text) = True Then
      Label1 = "Hexadecimal"
    Else
      Label1 = "Pas hexadecimal"
    End If

    Ha, j'allais oublier, quand tu parles de VB, tu parles bien sûr de VB6 ("vieille" version de VB à laquelle est dédiée cette partie du forum) ? Tu ne parles pas de VB.Net ?

  4. #4
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 4
    Par défaut
    merci a vous deux
    c`est ce que je cherchais.
    une autre question qui va vs paraitre débile(i`m new in vb):en c j'ai le tableau unsigned int suivant
    Unsigned int tab[]={0x01,0x0a,.........0x03} comment déclarer un équivalent a çà en vb?
    merci

  5. #5
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim TabL As Variant
    TabL = Array("0x01", "0x0a", "0x05", "0x07", "0x04", "0x01")
    MsgBox TabL(LBound(TabL)) & "   " & TabL(2) & "   " & TabL(UBound(TabL))
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

Discussions similaires

  1. Affichage Hexa sur 6 carctères dans un FlexGrid
    Par zazaraignée dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/08/2006, 02h22
  2. [Drupal] Passage de données entre applications sur différents serveurs
    Par navis84 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 26/07/2006, 11h36
  3. comment transmettre les données en restant sur la même page.
    Par jack_1981 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/04/2006, 17h29
  4. Réponses: 9
    Dernier message: 24/04/2006, 00h53
  5. [VB6]Accès et manipulation d'une BD Access sur réseau
    Par moi_leila dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 04/04/2006, 18h48

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