Différences entre "Declare" et "DllImport"

scortex84 Messages postés 379 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 20 avril 2011 - 27 juil. 2009 à 11:19
scortex84 Messages postés 379 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 20 avril 2011 - 27 juil. 2009 à 11:21
Bonjour,

J'ai un souci : je fais appel à une dll C++ dans mon appli VB.NET 2005.

Lorsque j'utilise l'instruction "declare", tout se passe bien :

Private Declare Function MAFonction Lib "MADLL.dll" (ByVal data As Byte) As Short

La dll me retourne bien le tableau de byte que j'attends.

Mais si je fais la même chose avec "DllImport", "ça part en brioche" :
<DllImport("MADLL.dll")> _
Private Shared Function MAFonction(ByVal data As Byte) As Short
End Function

Là, ma dll me retourne toujours un tableau de byte mais avec "32" dans chaque élément (sans que je ne change rien du coté de la dll C++)

Du coup, je me doute bien qu'il y a une différence entre "Declare" et "DllImport", mais laquelle ?

J'ai essayé d'ajouter des paramètres à l'instruction "DllImport", mais sans succès (je ne dois pas avoir modifié le bon paramètre), exemple :
<DllImport("MADLL.dll", ExactSpelling:=True)> _

1 réponse

scortex84 Messages postés 379 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 20 avril 2011 1
27 juil. 2009 à 11:21
Mon message a été tronqué :

Merci beaucoup pour toute l'aide que vous pourrez m'apporter.

Seb.
0
Rejoignez-nous