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 :

demande d'explication de code


Sujet :

VB 6 et antérieur

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Par défaut demande d'explication de code
    Bonjour,
    Je voudrais traduire le morceau de code suivant en Windev.
    LabId_Inventory est une fonction dans une dll incluse dans mon programme (LABIDkit.dll)
    Pouvez-vous m'éclairer un peu en me décrivant ligne par ligne le code?
    que signifie la ligne : uid = String(1024, "*")
    et les lignes:
    sn = Mid(uid, i * 8 - 7, 8)
    Me.listUid.AddItem (toHexString(StrReverse(sn)))

    Dim uid As String ça signifie que 'uid' est une chaine de caractères ou un tableau de chaines ?

    Cordialement
    F.Souchet



    --------------------- début du code ------------------------------------
    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
     Private Sub btInventory_Click()
        Dim errcode As LabIdReturnValue
        Dim uid As String
        Dim nTag As Long
        Dim i As Long
        Dim sn As String
     
        uid = String(1024, "*")
        Me.listUid.Clear
        errcode = LabId_Inventory(uid, nTag)
        If errcode = LabIdReturnValue.OK Then
            For i = 1 To nTag
                sn = Mid(uid, i * 8 - 7, 8)
                currentUid(i - 1) = sn
                Me.listUid.AddItem (toHexString(StrReverse(sn)))
            Next
            nCurrentUid = nTag
        End If
    End Sub
    --------------------- fin du code ------------------------------------

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Uniquement parceque on est des gentils et pas chauvins


    Dim errcode As LabIdReturnValue 'Definit errcode d'un type défini alleurs dans le programme, soit une classe, soit un UDT (user defined type)

    Dim uid As String 'definit uid comme variable de type string

    Dim nTag As Long 'definit nTag comme une variable de type long

    uid = String(1024, "*") 'met une chaine de 1024 charateres blanc dans uid

    sn = Mid(uid, i * 8 - 7, 8) 'met dans sn la souchaine contenue dans uid commencant au caractere i*8-7 et d'une longeur de 8

    Me.listUid.AddItem (toHexString(StrReverse(sn)))
    Me represente la feuille active
    listuid represente un composant placé sur la fentre active dont le nom est lstuid, d'apres le nom donné par le programmeur, on pourrait supposer qu'ils'agit d'un listview ou d'une listbox, mais ce n'est pas sur
    additem est une methode de listuid
    toHexString doit être une fonction définie dans le programme (ce n'est pas un mot clef du language)
    strReverse même chose


    J'espere que çà aidera

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Par défaut
    merci Delbeke d'avoir répondu à mon message !

    J'ai un problème quand j'appelle ma dll avec windev.
    en vb c'est la ligne errcode = LabId_Inventory(uid, nTag)

    en windev je tape:
    AppelDLL32("c:\rfid\LABIDKit.dll","LabId_Inventory",Uid,Ntag)
    mais ça me met une erreur dans le passage des paramètres Uid et /ou Ntag

    mon code windev:
    --------------------- début du code ------------------------------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Uid,sn est un chaîne
    i est un entier long
    Ntag est un entier long
    Errcod est un entier
     
    pour i=1 a 1024
      uid[[i]]=" "
    FIN
    Errcod=AppelDLL32("c:\rfid\LABIDKit.dll","LabId_Inventory",Uid,Ntag)
    ---------------------- fin du code ------------------------------


    as-tu une idée?
    merci

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Aucune idée,je ne pratique pas windew et en plus je ne connais pas ta dll

Discussions similaires

  1. Demande d'explication de code std::find_if
    Par Kalite dans le forum C++
    Réponses: 2
    Dernier message: 28/02/2014, 14h46
  2. [Débutant] Demande d'explication de code
    Par vahan dans le forum VB.NET
    Réponses: 6
    Dernier message: 10/02/2014, 20h02
  3. Demande d'explication de code
    Par nor99 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/02/2013, 14h35
  4. demande d'explication de code
    Par kawther dans le forum Débuter
    Réponses: 4
    Dernier message: 14/10/2008, 22h05
  5. utilisation de code barre - demande d'explication
    Par cortex024 dans le forum Windows
    Réponses: 15
    Dernier message: 16/02/2006, 16h37

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