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 :

appel de pointer sur fonction?


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Décembre 2005
    Messages : 391
    Par défaut appel de pointer sur fonction?
    bonjour

    j ai un peripherique qui est pilote a l aide d une dll en C

    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
    27
    28
    29
    30
     
    #ifndef _UBOXAPI_H_
    #define _UBOXAPI_H_
     
    #define	microBox_BIT                    0
    #define microBox_VOLT                   1
     
    #include "windows.h"
     
    //Controll Functions
    int (*Sensor2USB_InitSystem)(void);
    int (*Sensor2USB_CloseSystem)(void);
    int (*Sensor2USB_GetDeviceNumber)(void);
    int (*Sensor2USB_GetDLLVersion)(char* DLLversion);
    int (*Sensor2USB_GetFirmwareVersion)(int deviceNumber, char *fwVersion);
    int (*Sensor2USB_GetSerialNumber)(int deviceNumber,char *serialNumber);
    //Setting Functions
    int (*Sensor2USB_ChannelConfiguration)(int deviceNumber,BYTE enable_ch0,unsigned short int gain_ch0, BYTE range_ch0, BYTE resolution_ch0, BYTE enable_ch1, unsigned short int gain_ch1, BYTE range_ch1, BYTE resolution_ch1, BYTE enable_ch2,unsigned short int gain_ch2, BYTE range_ch2, BYTE resolution_ch2,BYTE enable_ch3, unsigned short int gain_ch3, BYTE range_ch3, BYTE resolution_ch3, BYTE enable_ch4);
    //RealTime Functions
    void (*Sensor2USB_EnableRealTime)(void);
    void (*Sensor2USB_DisableRealTime)(void);
    int (*Sensor2USB_GetRealTimeSampleBufferVOLT)(int deviceNumber,DWORD MAX_SIZE,float *Ch0, float *Ch1, float *Ch2,float *Ch3, float *Ch4, DWORD *ch0_size, DWORD *ch1_size, DWORD *ch2_size,DWORD *ch3_size, DWORD *ch4_size,BYTE *digitalInputValue, unsigned int *pounterValue);
    int (*Sensor2USB_GetRealTimeSampleBufferBIT)(int deviceNumber,DWORD MAX_SIZE,unsigned int *Ch0, unsigned int *Ch1, unsigned int *Ch2,unsigned int *Ch3, unsigned int *Ch4,DWORD *ch0_size, DWORD *ch1_size, DWORD *ch2_size,DWORD *ch3_size,DWORD *ch4_size,BYTE *digitalInputValue, unsigned int *pounterValue);
    //Digital inputs: digital input & counter
    int (*Sensor2USB_GetDigitalInputs) (int deviceNumber, BYTE *digitalInputValue, unsigned int *counterValue);
    //Analog output
    int (*Sensor2USB_SetAnalogOutput) (int deviceNumber, WORD analogOutputValue);
    //Digital outputs
    int (*Sensor2USB_SetDigitalOutput) (int deviceNumber, BYTE digitalOutputNumber, BYTE valueOutput);
    #endif
    comment appeller ces diffenrentes fonctions en vb6

    merci

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    Avec les déclarations je pense ; par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Declare Function Sensor2USB_GetDLLVersion Lib "DLL_NAME" (ByVal DLLversion As String)
    Il me semble qu'il faille que tu mettes la DLL dans system32 de windows par contre pour que cela fonctionne

    Remplace DLL_NAME par le nom de ta dll, sans le .dll à la fin

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 108
    Par défaut
    Il faut mettre la DLL dans un répertoire %PATH% ou dans le chemin de l'exécutable.

  4. #4
    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
    Je vais y mettre mon grain de sel aussi
    Comme Vld44 avec petite variante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Declare Function GetDLLVersion Lib "Sensor2USB" (ByVal DLLversion As String)
    Sensor2USB devant être le nom de la DLL
    Salut
    :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 ← ← 👈

  5. #5
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    ah ok J'ai jamais fait de C je savais pas.
    Bonne journée

  6. #6
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Et un grain de poivre...

    La plupart des DLL qu'on utilise en programmation et donc en VB, sont écrites en C ou encore dans un langage de plus bas niveau, et le plus souvent on ne s'en rend même pas compte!

    Vous avez sans doute déjà entendu parler des niveaux des langages de programmation. Par exemple VB est un langage de haut niveau (high level) et Assembleur est un langage de bas niveau (low level)... Rien à voir avec leur degré d'efficacité ou de leur complexité. Plus le niveau est dit 'bas', plus il est proche de la machine ou si vous préférez de la couche matérielle. Et plus le niveau est haut, plus il est proche de l'utilisateur et plus il ressemble à un langage humain. Le niveau le plus bas étant les 0 et les 1 qui se baladent dans les bus de votre carte mère et qui sont traités par le processeur et le niveau le plus haut étant le résultat que vous voyez sur votre moniteur.

    Bonne cogitation!

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/03/2008, 15h35
  2. appel pointeur sur fonction dans DLL
    Par dietrich dans le forum Windows
    Réponses: 6
    Dernier message: 24/10/2007, 21h48
  3. Réponses: 4
    Dernier message: 01/07/2004, 19h15
  4. Pointer sur un fichier FILE *
    Par Biou Pink Powa dans le forum C
    Réponses: 3
    Dernier message: 29/01/2004, 14h45
  5. Declaration de fonction retournant un pointeur sur fonction
    Par pseudokifaitladifférence dans le forum C
    Réponses: 5
    Dernier message: 11/08/2003, 19h37

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