Bonsoir,

je rencontre un souci assez pénible depuis quelques temps en C++.
Certains programmes/librairies arrivent avec des fichiers .h et .lib, qu'on peut utiliser pour ses propres programmes. Seulement voilà, certains .lib font référence à des .dll, et si ces dll ne sont pas dans le repertoire de sortie de mon programme, j'ai un joli message d'erreur "dll machin introuvable ; la réinstallation de l'application peut corriger le problème".

C'est un problème assez frustrant, puisque ça oblige à avoir un répertoire avec un .exe et plein plein de .dll, sans pouvoir les rassembler dans un sous-répertoire pour faire plus propre. Pourtant, je pense que ça doit être possible de dire à un programme que la DLL correspondant à telle librairie se trouve à un certain endroit du disque dur et pas seulement dans son propre répertoire (sinon ça doit être le bordel sur les gros projets).

Je pense qu'on peut utiliser la fonction "loadlibrary", je l'ai utilisé pour charger MAPI. Seul hic, cette fonction renvoie un Handle, et je ne sais pas comment faire comprendre à l'éditeur de lien, ni même au programme par la suite, que ce handle correspond à la DLL d'un .lib que j'ai spécifié via un #pragma comment...

Bref, je suis un peu dans l'obscurité, pourtant je pense pas que mon problème soit insoluble.

Merci !