Utilisation __stdcall

Signaler
Messages postés
3
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
10 mai 2006
-
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
-
bonjour,
j'ai un petit problème. je doit utiliser une dll en c++ dans un programme mais c'est la premiere fois. j'ai deja vu sur des forum qu'on utiliser des fonction comme __declspec (dllimport) mais ça ne marche pas avec moi car apparement les fonction exporter de la dll sont declarer comme : __stdcall Open(.....) etc
est ce que quelqu'un pourrait m'aider pour me dire comment faire cela, je voudrai faire le code sur Visual c++ 6.0 et j'ai un fichier .dll et un autre .lib
merci

6 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
Faudrait savoir si les fonctions exportées sont vraiment en stdcall, voir la doc ou plutot le fichier h qui doit accompagner le lib.

ciao...
BruNews, MVP VC++
Messages postés
3
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
10 mai 2006

oui on ma transmit un fichier avec les déclaration est elle sont:
int __stdcall Open.....
Messages postés
199
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
28 février 2008

Si ça peut t'aider j'ai posté un petit message dessus (__declspec) : http://www.cppfrance.com/infomsg/CHARGEMENT-DLL-0_711827.aspx

___________________
MVS - Most Valuable Student ( Microsoft)
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Salut. Heu moi pour importer des fonctions d'une librairie je fais comme suit:

extern "C" int MaFonction __stdcall

J'ai aucune idée si ça fonctionnera avec toi mais moi ça fonctionne à merveille.

___________________________________________
Les plus grands esprits trouvent toujours une solution
Messages postés
3
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
10 mai 2006

euh.. voila ce qu j'ai fait :
extern "C" int __stdcall Open(...);
quand je compile ça donne :
main.obj : error LNK2001: unresolved external symbol _Open@24
si je met pas le extern "C" ça me fait pas d'erreur..... c'est important? y a t-il un reglage a faire?
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Ça dépend comment on été exporté les fonctions de la librairie. A tu les sources???

___________________________________________
Les plus grands esprits trouvent toujours une solution