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

  FORUM HardWare.fr
  Programmation
  C++

  Visual C++ et une appli basée sur des lib/dll...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Visual C++ et une appli basée sur des lib/dll...

n°391891
Yoyo@
Posté le 13-05-2003 à 14:02:22  profilanswer
 

Salut,
 
J'utilise VC++.
 
J'ai créé une librairie basique, ce qui a eu pour effet de me générer un .lib et un .dll (MFC AppliWizrad qui m'a généré tout ça! Tout compile bien)
 
Alors, j'ai créé une autre appli, et je souhaite incorporer la fonctionnalité des DLL/LIB récemment crées, donc dans un projet indépendant.
 
Pour ce faire, j'ai inclus le bon fichier .h qui se trouve dans le répertoire du projet ou j'ai fait mes DLL, et j'ai incorporé le .lib dans l'arbre de mon projet, pointant donc dans le répertoire ou j'avais créé mes DLL!
 
Quand je lance l'appli, il me dit  
 
"Cette application n'a pas pu démarrer car blablabla.dll est introuvable. La réinstallation de cette application peut corriger le probleme."
 
Alors, j'ai pris la DLL du répertoire original, et je l'ai mis dans le debug de l'appli devant se servir de ces librairies, et là...ca marche!
 
Je ne comprends pas trop pourquoi, donc, j'aurais voulu déja connaitre la différence entre un .lib et un .dll.
Le .dll n'apparait pas dans l'arborescence de mon projet, contrairement au .lib...
 
Merci,
 
Yoyo*
 
 
 


---------------
It's nice to be important, but it's more important to be nice
mood
Publicité
Posté le 13-05-2003 à 14:02:22  profilanswer
 

n°391902
chrisbk
-
Posté le 13-05-2003 à 14:06:25  profilanswer
 

le lib permet a ton programme de charger la dll
maintenant il faut que quand tu lance ton prog la dll soit trouvable (c a dans le "path" )

n°391919
Tetragramm​aton IHVH
dieu unique => pensée unique
Posté le 13-05-2003 à 14:16:07  profilanswer
 

Un LIB est juste la "description" des fonctionnalités codées dans la DLL, pas les fonctionnalités elles-mêmes. Ca sert juste à linker avec le EXE. Quand tu voudras distribuer ton appli, il faudra fournir le EXE et la DLL mais pas le LIB.
 
Un programme cherche les DLL dans le même répertoire que l'EXE puis il cherche dans le repertoire système (ex: c:\winnt\system32\)


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
n°392056
theshockwa​ve
I work at a firm named Koslow
Posté le 13-05-2003 à 15:07:41  profilanswer
 

Tetragrammaton IHVH a écrit :

Un LIB est juste la "description" des fonctionnalités codées dans la DLL, pas les fonctionnalités elles-mêmes. Ca sert juste à linker avec le EXE. Quand tu voudras distribuer ton appli, il faudra fournir le EXE et la DLL mais pas le LIB.
 
Un programme cherche les DLL dans le même répertoire que l'EXE puis il cherche dans le repertoire système (ex: c:\winnt\system32\)


 
Pour compléter ce qu'a dit Tetragammaton IHVH, je dirais que le code contenu dans les fichiers .lib est utilisé pour générer l'EXE => tout ce qui se trouve dans le .lib se retrouvent dans l'exe ...
 
Mais pour ta dll, ton .lib ne possède que des outils pour rechercher les fonctions contenues dans ta dll et les publier dans ton prog ...
 
Les DLL sont recherchées comme tout fichier exécutable sous Windows : D'abord dans le répertoire courant, ensuite dans le path ... (cf tes variables d'environnement)


---------------
last.fm
n°392155
Yoyo@
Posté le 13-05-2003 à 15:50:15  profilanswer
 

OK, merci pour toutes vos réponses, j'y vois vraiment plus clair :)
 
@Bientot,
 
Yoyo*


---------------
It's nice to be important, but it's more important to be nice
n°392397
BENB
100% Lux.
Posté le 13-05-2003 à 17:32:41  profilanswer
 

Bien sur il est possible de ne faire qu'un .lib plutot qu'une DLL, et alors plus de problèmes pour trouver la Dll a l'execution...

n°392650
Yoyo@
Posté le 13-05-2003 à 21:30:16  profilanswer
 

BENB a écrit :

Bien sur il est possible de ne faire qu'un .lib plutot qu'une DLL, et alors plus de problèmes pour trouver la Dll a l'execution...


 
Oui, je sais...
 
Une SLL en quelque sorte (Static Linked Library :lol: )
 
Yoyo*


---------------
It's nice to be important, but it's more important to be nice
n°392717
chrisbk
-
Posté le 13-05-2003 à 22:54:38  profilanswer
 

Yoyo@ a écrit :


 
Oui, je sais...
 
Une SLL en quelque sorte (Static Linked Library :lol: )
 
Yoyo*


 
ben heuh c comme ca que ca s'appelle hein ?

n°393950
blackgodde​ss
vive le troll !
Posté le 14-05-2003 à 16:59:25  profilanswer
 

pour savoir où le loader (le système) cherche les DLL dont a besoin ton prog : (par ordre de recherche)
 
1- The directory from which the application loaded.  
2- The current directory.  
3- The system directory. Use the GetSystemDirectory function to get the path of this directory.  
4- The 16-bit system directory. There is no function that obtains the path of this directory, but it is searched.
 
Windows Me/98/95:  This directory does not exist.
 
 
5- The Windows directory. Use the GetWindowsDirectory function to get the path of this directory.  
6- The directories that are listed in the PATH environment variable.


---------------
-( BlackGoddess )-
n°394224
Yoyo@
Posté le 14-05-2003 à 20:29:01  profilanswer
 

BlackGoddess a écrit :

pour savoir où le loader (le système) cherche les DLL dont a besoin ton prog : (par ordre de recherche)
 
1- The directory from which the application loaded.  
2- The current directory.  
3- The system directory. Use the GetSystemDirectory function to get the path of this directory.  
4- The 16-bit system directory. There is no function that obtains the path of this directory, but it is searched.
 
Windows Me/98/95:  This directory does not exist.
 
 
5- The Windows directory. Use the GetWindowsDirectory function to get the path of this directory.  
6- The directories that are listed in the PATH environment variable.


 
Parfait :) Merci :)
 
Yoyo*
 
PS : Où as tu trouvé cette aide?


---------------
It's nice to be important, but it's more important to be nice
mood
Publicité
Posté le 14-05-2003 à 20:29:01  profilanswer
 

n°394357
blackgodde​ss
vive le troll !
Posté le 14-05-2003 à 22:02:03  profilanswer
 

msdn.microsoft.com ;)
 
(à LoadLibrary, c pour charger une DLL apres le démarrage du prog, mais le système cherche tjs ds le mm ordre)


---------------
-( BlackGoddess )-

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

  Visual C++ et une appli basée sur des lib/dll...

 

Sujets relatifs
Petite question Visual Basic (impression)[C++] Utilisation de timer sous Visual C++ avec API Win32
[C++] Je cherche un tutorial bien fait pour faire une GUI en visualLancer la messagerie par défaut à partir d'une appli JAVA
[Visual C++] "cannot add new member"[pas résolu!!]lancer une connexion internet à partir d'une appli
ecrire et lire dans un fichier en visual basic 6 ?visual basic 3
Sous Visual C++ 6.0, créer un bouton Parcourir (fichier)besoin d'aide pour resolution d'erreur sous visual c++
Plus de sujets relatifs à : Visual C++ et une appli basée sur des lib/dll...


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