Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
991 connectés 

  FORUM HardWare.fr
  Programmation

  [C++] Utilisation d'une fonction d'une DLL ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++] Utilisation d'une fonction d'une DLL ???

n°31216
*syl*
--> []
Posté le 13-05-2001 à 15:57:16  profilanswer
 

J'arrive pas à utiliser une fonction d'une dll sans passer par LoadLibrary...
En fait, je voudrais mettre la déclaration de la fonction dans mon .H pour que le prog charge tout seul comme un grand la DLL...
En Delphi et en VB, je sais faire mais là, en c++ je sèche...
 
Un p'tit exemple sur cette fonction serait le bienvenu :
 
DLL : user32.dll
 
int ShowCursor(
  BOOL bShow   // cursor visibility flag
);
 
merci d'avance ! :jap:

mood
Publicité
Posté le 13-05-2001 à 15:57:16  profilanswer
 

n°31223
haahhahaha​ha
Posté le 13-05-2001 à 16:32:48  profilanswer
 

??
comprend pas la ?
 
tu veux utiliser cette fonction ben tu tape ShowCursor (false); qq part.
 
c ca parce ke sinon explike mieux.


---------------
haahhahahaha == TheJackal
n°31238
*syl*
--> []
Posté le 13-05-2001 à 17:30:10  profilanswer
 

j'ai donné cette fonction au pif pour que ce soit un exemple simple...
 
c'est bien expliqué je trouve... c'est toi qui a pas compris  :na:

n°31243
Amadeus
Posté le 13-05-2001 à 17:40:21  profilanswer
 

Si tu utilises VC++ tu dois juste inclure le header adéquat. Si ça marche pas c'est que la lib d'importation (qui contient les infos sur les fonctions exportées de la dll) n'a pas été trouvée: dans ce cas tu inclue le rép. des libs dans les chemins de recherche (tools/options/dir/lib).
 

*Syl* a écrit a écrit :

J'arrive pas à utiliser une fonction d'une dll sans passer par LoadLibrary...
En fait, je voudrais mettre la déclaration de la fonction dans mon .H pour que le prog charge tout seul comme un grand la DLL...
En Delphi et en VB, je sais faire mais là, en c++ je sèche...
 
Un p'tit exemple sur cette fonction serait le bienvenu :
 
DLL : user32.dll
 
int ShowCursor(
  BOOL bShow   // cursor visibility flag
);
 
merci d'avance ! :jap:



n°31275
*syl*
--> []
Posté le 13-05-2001 à 19:23:40  profilanswer
 

>Amadeus : j'utilise C++Builder et je pourrais inclure le .lib mais j'ai pas envie, j'aimerais plutôt faire à la manière de ce que je faisait dans delphi... c'est peut-être pas possible de faire la même chose en c++ mais ça m'étonnerait, si personne sait, ben tant pis j'utiliserais le .LIB
 
 
un exemple en delphi de ce que je voudrais faire en c++ pour me faire mieux comprendre :
 
//Je déclare la fonction & la dll est chargée automatiquement au démarrage de mon appli
function ShowCursor(b: boolean) : integer ; stdcall; external 'user32.dll' ;
 
//Ensuite j'ai plus qu'à l'utiliser...
ShowCursor(false) ;

n°31281
haahhahaha​ha
Posté le 13-05-2001 à 19:32:14  profilanswer
 

tu peux pas sof avec LoadLibrary...
 
noublie pas d'exporter la fonction depuis la dll sinon, tu ne pourra pas l'utiliser


---------------
haahhahahaha == TheJackal
n°31302
*syl*
--> []
Posté le 13-05-2001 à 21:02:49  profilanswer
 

Tu pourrais donner un exemple en c++ avec comme fonction test celle donnée plus haut comme ça j'aurais plus qu'à adapter par rapport aux autres fonctions ?
 
>noublie pas d'exporter la fonction depuis la dll sinon, tu ne pourra pas l'utiliser
 
ca je m'en fout, je vais utiliser seulement utiliser des dlls, pas en créer donc j'aurais le .h le .dll et le .lib je le génère moi même...

n°31308
haahhahaha​ha
Posté le 13-05-2001 à 21:53:29  profilanswer
 

faire les lib ?  
c celui qui a fait la dll qui de le donne en meme temps que la dll.
 :??:  :??:

n°31363
SoWhatIn22
Posté le 14-05-2001 à 09:00:58  profilanswer
 

Hello,
 
si tu utilises C++ Buidler, c'est particulier. Depuis la version 5, les pb ont du être résolus. Mais jusqu'à la version 4, tu étais obligé d'utiliser le LoadLibrairy.
La raison: Le format des Dll produites avec les outils Micosoft ne respectent pas le format imposé par ... Microsoft !!!
Donc pas d'autres solutions...
 
Il me semble que depuis la version 5, l'importation des dll et la compatibilité avec les MFC se passent beaucoup mieux. Mais bon, j'ai pas essayé depuis.
 
a+

n°31406
seblamb
Posté le 14-05-2001 à 11:29:41  profilanswer
 

On peut se passer de loadlibrairy sous tous les produits C++ Builder ou Borland C++.
 Il suffit de convertir le .lib avec "coff2omf.exe" qui se trouve dans le reprtoire de "bcb.exe"


---------------
[:seblamb] Moi aussi je veux grater dédé!!!
mood
Publicité
Posté le 14-05-2001 à 11:29:41  profilanswer
 

n°31483
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 14-05-2001 à 14:58:23  profilanswer
 

coff2omf.exe, t'es sûr que c'est avec Borland C++ ? moi, je le trouve uniquement dans le repertoire de VisualCafe  
j'vais essayer celui-là
 
non non, ça convertit pas les lib, chez moi ... ça convertit des .obj en chai pas quoi (d'ailleur c'est pas fait pour le c mais pour le java ).
t'aurais pas le nom de l'utilitaire en vrai ?
 
 
parceque pour l'instant, ma librairie ressemble à ça :
ð
plein de saloperies zkjehflkzuhelfjbjkslvj
 
 
c'eest inutilisable du coup !!

 

[edit]--Message édité par Moustaaki--[/edit]

n°31490
seblamb
Posté le 14-05-2001 à 15:11:06  profilanswer
 

Je ne sais pas si c'est ce nom là pour tous les compilateurs borland mais c'est celui pour C++ Builder 4
J'ai la description exacte sous les yeux de ce prog dans l'aide de builder
 

Citation :


Coff2Omf est un outil en ligne de commande qui convertit un fichier bibliothèque d’importation COFF (InputFile) en un fichier bibliothèque d’importation OMF correspondant (OutputFile). Coff2Omf.exe se trouve dans le répertoire BIN de C++Builder. La syntaxe est :  
 
Coff2Omf [options] InputFile OutputFile
 
Coff2Omf convertit les symboles exportés publiquement dans la bibliothèque d’importation COFF en un jeu de symboles correspondant dans la bibliothèque d’importation OMF. Coff2Omf permet aux utilisateurs de C++Builder d’établir un lien avec des DLL Microsoft et tierces qui utilisent le format COFF. Coff2Omf ne convertit pas les fichiers .OBJ.
 
Exécutez l’outil Coff2Omf sur une bibliothèque d’importation COFF créée pour une DLL spécifique, et utilisez la bibliothèque d’importation obtenue pour lier les fichiers EXE et DLL de format OMF à la DLL COFF. Les commutateurs de Coff2Omf sont :


 
Ce programme existais deja quand j'ai eu mon premier compilateur windows en 95 (Borland C++ 4).


---------------
[:seblamb] Moi aussi je veux grater dédé!!!
n°31491
seblamb
Posté le 14-05-2001 à 15:12:31  profilanswer
 

seblamb a écrit a écrit :

Je ne sais pas si c'est ce nom là pour tous les compilateurs borland mais c'est celui pour C++ Builder 4
J'ai la description exacte sous les yeux de ce prog dans l'aide de builder
 

Citation :


Coff2Omf est un outil en ligne de commande qui convertit un fichier bibliothèque d’importation COFF (InputFile) en un fichier bibliothèque d’importation OMF correspondant (OutputFile). Coff2Omf.exe se trouve dans le répertoire BIN de C++Builder. La syntaxe est :  
 
Coff2Omf [options] InputFile OutputFile
 
Coff2Omf convertit les symboles exportés publiquement dans la bibliothèque d’importation COFF en un jeu de symboles correspondant dans la bibliothèque d’importation OMF. Coff2Omf permet aux utilisateurs de C++Builder d’établir un lien avec des DLL Microsoft et tierces qui utilisent le format COFF. Coff2Omf ne convertit pas les fichiers .OBJ.
 
Exécutez l’outil Coff2Omf sur une bibliothèque d’importation COFF créée pour une DLL spécifique, et utilisez la bibliothèque d’importation obtenue pour lier les fichiers EXE et DLL de format OMF à la DLL COFF. Les commutateurs de Coff2Omf sont :


 
Ce programme existais deja quand j'ai eu mon premier compilateur windows en 95 (Borland C++ 4).




---------------
[:seblamb] Moi aussi je veux grater dédé!!!
n°31530
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 14-05-2001 à 16:44:38  profilanswer
 

:eek2: j'ai Borland C++ 5.01 et je ne le trouve pas dans BIN ....
ya un prog qui s'appelle implib par contre, est-ce que ça pourrait étre ça ?
j n'arrive pas à l'utiliser mais c'est peut étre mes librairies qui ne sont pas conforme. (ce ne sont pas des lib kro$oft)
toujours est_il que je n'arrive toujours pas à utiliser mes fonctions dll...

n°31544
Moustaaki
.: ILITCH :. ésprit sibérie
Posté le 14-05-2001 à 16:57:08  profilanswer
 

Qu'est ce que c'est que ce LoadLibrairies que j'essaye ça  ?

n°31605
*syl*
--> []
Posté le 14-05-2001 à 18:40:07  profilanswer
 

Moustaaki a écrit a écrit :

:eek2: j'ai Borland C++ 5.01 et je ne le trouve pas dans BIN ....
ya un prog qui s'appelle implib par contre, est-ce que ça pourrait étre ça ?
j n'arrive pas à l'utiliser mais c'est peut étre mes librairies qui ne sont pas conforme. (ce ne sont pas des lib kro$oft)
toujours est_il que je n'arrive toujours pas à utiliser mes fonctions dll...




 
moi j'utilisais aussi implib pour créer le fichier .LIB associé à la DLL


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [C++] Utilisation d'une fonction d'une DLL ???

 

Sujets relatifs
JAVA et DLL ????[JAVA] Utilisation des APIs XML notemment DOM
Image sur un site : forcer la mise en cache et son utilisation ?[C/C++]Question a deux balles: c'est quoi une fonction far ou near ?
[HTML] Changer un cadre en fonction d'une liste[VC++] Fonction d'encodage d'une URL en VC++ ?
recherche un fonction pour enregistrer les bitmap[C++] Utilisation du port COM
Utilisation d'objets sous VC++Classe graphe en C++ et utilisation de STL
Plus de sujets relatifs à : [C++] Utilisation d'une fonction d'une DLL ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR