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.NET Discussion :

équivalence c++, vb


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 10
    Par défaut équivalence c++, vb
    Bonjour,

    pour mon programme, j'utilise une dll codée en c++. j'appelle les fonctions ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Declare Function Fonction Lib "C:\WINDOWS\system32\Blabla.dll" (ByVal index As Char, ByVal flag As Boolean) As ULong
    (par exemple)

    là où j'ai un souci, c'est quand les variables des fonctions de la dll sont des pointeurs genre long* ou bool*. je mets quoi quand je déclare la fonction ? je sais que pour char*, on met string mais c'est tout.

    merci.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonjour,

    Un peu de lecture :

    http://msdn.microsoft.com/fr-fr/library/172wfck9.aspx

    Et bon courage

  3. #3
    Membre averti
    Inscrit en
    Août 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 24
    Par défaut
    Bonsoir,

    Vous pouvez faire ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Declare Function Fonction Lib "C:\WINDOWS\system32\Blabla.dll" (ByVal index As Char, ByVal flag As Boolean) As IntPtr
    Lors de l'appel de la fonction, vous pouvez utiliser Marshal.ReadInt64(x) ou x est de type IntPtr

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Par défaut
    Bonsoir,

    A moins que la dll soit codée pour du 64 bits le Ulong va se transformer en UInteger. Le lien que j'ai donné permet en fait de comprendre comment utiliser des dll écrites en C ou C ++ non managé vers du code managé... il y a beaucoup à lire et à comprendre, car il y a en plus de subtiles notions quand au byref et byval, et à la la classe marshall, les pointeurs vers des string terminées par null, des tableau de chaînes de longueur délimitées terminées par null ou non ...

Discussions similaires

  1. équivalent lien HTML
    Par Dra_Gun dans le forum Flash
    Réponses: 3
    Dernier message: 15/12/2003, 16h25
  2. Réponses: 4
    Dernier message: 21/09/2003, 15h50
  3. Réponses: 3
    Dernier message: 21/08/2003, 14h47
  4. [postgreSQL] équivalent de la function 'instr'
    Par Dra_Gun dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/01/2003, 16h09
  5. Équivalent du #IFDEF
    Par agh dans le forum Langage
    Réponses: 4
    Dernier message: 14/10/2002, 18h44

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