begin process at 2012 02 14 11:57:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

Problème de DLL avec fonctions C-Style...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de DLL avec fonctions C-Style...

lundi 6 mars 2006 à 17:01:53 | Problème de DLL avec fonctions C-Style...

Jonef

Bonjour,
je dois développer une application sur un terminal de saisie de données au laser. Le constructeur fourni une DLL pour contrôler les fonctions liés au matériel (exemple : allumer une LED). Seulement je n'arrive pas à inclure cette DLL dans mon projet VB.NET. j'ai appelé le constructeur du terminal et ils m'ont dit que la DLL était composée de fonctions C-Style et qu'elle ne pouvaient pas être utilisés sous .NET.
Il m'ont donné cette démarche à suivre pour convertir cette DLL mais je n'y comprend pas grand chose :o  :
"La solution actuelle pour utiliser les fonctions C-style de
dl_api (librairies C/C++ pour les éléments hardware autre que laser) est
de créer une DLL en C qui "instancie" les classes nécessaires de dl_api
et les exporte comme une API standard (Wrapper class). Les
méthodes peuvent être importées dans un projet .NET via les déclarations
standards de fonctions (declare function lib dans VB.NET)."

J'ai à ma disposition la DLL : dl_api.dll et la librairie dl_api.lib mais je ne sais pas comment faire. J'ai bien essayé d'utiliser la DLL directement comme cela :
Public declare Sub SetGreenLed lib "dl_api.dll" (b as Int32)
mais rien à faire, j'ai des erreurs d'exceptions.

Si quelqu'un peu m'aider ça serait génial.
Merci beaucoup.

Jonef

lundi 6 mars 2006 à 17:45:30 | Re : Problème de DLL avec fonctions C-Style...

BruNews

Administrateur CodeS-SourceS
C'est clair qu'il est inutile d'insister avec une pareille cochonnerie (si si), une boite qui n'est pas au courant qu'une dll devrait toujours exporter au standard stdcall est dirigée par des incapables.
En cdecl (C-style) c'est l'appelant qui dépile les params, faudrait voir si'il n'y a pas un mot clé pour changer le déclarateur de fonction (n'existe pas en ancien vb). Il est certain que ce genre d'export exclut les langages interprétés.
Comme dit par le constructeur, compile une dll exportant en stdcall et que tu link avec la lib constructeur, tu appelleras ta dll qui repassera en cdecl le boulot à la dll originale.

Indique donc à ce constructeur que nous avons des CVs de vrais développeurs pour leur faire une dll correcte, sait-on jamais.

ciao...
[ Lien ]
BruNews, MVP VC++
mercredi 8 mars 2006 à 18:03:02 | Re : Problème de DLL avec fonctions C-Style...

Jonef

Je suis désolé mais c'est au dela de mes compétences car je n'ai jamais créé des DLL. Je sais en créer une simple avec mes fonctions mais je ne sais pas inclure de librairie .lib et exporter ces fonctions...tu pourrais m'expliquer ça en détails?

Merci beaucoup.

Jonef

mercredi 8 mars 2006 à 20:34:14 | Re : Problème de DLL avec fonctions C-Style...

BruNews

Administrateur CodeS-SourceS
goto cppfrance.
Tu regardes dans mes sources, surtout de hook, tu trouveras plein d'exemple d'import librairies. Ce qui se fait sur exe se fera idem sur dll.
Si tu veux t'y mettre, Richter t'expliquera toute la technique des dLLs en détail:
[ Lien ]
[ Lien ]

ciao...
[ Lien ]
BruNews, MVP VC++


Cette discussion est classée dans : style, dll, api, fonctions, dl


Répondre à ce message

Sujets en rapport avec ce message

API > Lister les fonctions d'une DLL .... [ par Troydis ] Salut !Je voudrais savoir s'il existe un moyen de lister toutes les fonctions que possède une DLL et si possible, les arguments qu'il faut rentrer pou Je peut trouver toutes les fonctions contenues dans une DLL [ par MadM@tt ] Salut tout le monde,je me suis aperçu que en décompilant une DLL je pouvai trouver toutes les fonctions qu'elle contient. Il est vrai que l'on peut ut Connaitre les fonctions d'une DLL [ par alex1er ] SalutJ'aimerais savoir comment faire pour connaitre les fonctions contenues dans une DLL que l'on recupere, dans le but de la réutiliser.Merci utilisation de l'API winmm.dll [ par carolito ] J'aimerais créer un programme qui utilise l'API WINMM.DLL pour :- lire des fichiers MIDI- créer des fichiers MIDI [*.mid]- sélectionner des instrument API MSN Messenger [ par LordBob ] Salut a tous,voula j'ai juste une simple question, je voudrais savoir laquele de ces 3 dll contient les API programmable en VB de Messenger:_ custsat. aide en ligne (F1) [ par xavier77 ] Salut, j'ai crée en VB6 une Dll assez importante, remplie de fonctions assez complexes.... J'ai créer avec un fichier au format *.chm qui explique cha SetCaretPos ? [ par azerty25 ] Hello !!L'API GetCaretPos éxiste mais est-ce que l'api SetCaretPos éxiste aussi ? J'ai vu que dans le langage C c'était le cas, ou en python, je sais Problème avec une API, assez bizzare [ par DeadlyPredator ] Je veux utiliser cette api :DllFunctionCall de Msvbvm60.dllÉvidament, je ne trouve pas de documentation sur cette api. Je sais par contre que cette ap Deploiement projet VB6 [ par isou9001 ] Bonjour,J'ai un projet utilisant- certaines API comme Lib "user32" et Lib "kernel32"- un user control UserControl.AsyncRead pour downloader un fichier Api ... Dlls [ par jerexgrz ] Actuellement, je teste des fonctions graphiques Vb du style (pset, point) qui me permet de recuperer et d'afficher les images de 32*32 pixels. J'aimer


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales