IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Comment lier exe a dll


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut Comment lier exe a dll
    Bonjour,
    apparemment lorsque l'on développe une dll, celle-ci est liée dynamiquement au programme grâce à un appel a LoadLibrary.
    J'essaye de m'inspirer du programme Taski sur Souceforge qui permet la capture de scene opengl en injectant une dll dans les jeux Opengl et en récupérant un buffer de l'image avant de renvoyer celui-ci au programme laucher (injecteur de la dll) pour sauvegarder le buffer sous forme d'image...
    Le probleme c'est que je ne vois pas comment le launcher et la dll sont liés=> il n'y a pas d'appel à LoadLibrary ?
    Dans la ligne de commande du linker je vois que l'exe est linké à la lib de la dll, mais je vois pas où cela est paramétré ?
    Auriez-vous une idée ?

    Merci pour toute aide.

  2. #2
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    Bonjour,
    personne n'aurait une idée? En fait pour faire plus simple pourriez-vous seulement télécharger la solution (VC++ su VS 2003) qui comprend 2 projets :
    un pour un exe et l'autre pour une DLL :
    - j'aimerais seulement savoir comment les deux sont liés car je ne vois pas d'appel à LoadLibrary correspondant à la DLL ...

    Merci d'avance à celui qui aura le courage de jeter un petit coup d'oeil,
    Lek .

  3. #3
    LEK
    LEK est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    715
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 715
    Par défaut
    Bonjour,
    Merci à ceux qui ont lus mon post mais c'est bon je crois que j'ai trouvé!
    Pour qui aurait la même question : il suffit d'utiliser la DLL depuis l'exe en incluant les headers adéquats et de marquer la DLL comme dépendance du projet exe.

    Lek.

  4. #4
    Expert confirmé

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par défaut
    En fait, si ton Exe utilise les headers de la Dll, il utilise la lib créée lors de la génération de la Dll pour avoir le code qu'il lui manque au niveau des fonctions spécifiques de la Dll. Il lui faut alors avoir la Dll à côté pour pouvoir récupérer les fonctions lors de l'exécution (mets la Dll dans un autre dossier que l'exe et celui-ci ne se lancera plus, à moins que le dossier contenant la Dll soit dans le PATH).
    Pour avoir besoin d'un LoadLibrary, il faut en fait ne pas inclure les headers dans le code de ton Exe, pré-déclarer les prototypes de tes fonctions de la même manière que dans la Dll puis tu charges la Dll via LoadLibrary, et tu charges les symboles correspondant aux fonctions via GetProcAddress.
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment lier une DLL à un exe en 4.0 ?
    Par alavoler dans le forum C#
    Réponses: 4
    Dernier message: 25/01/2013, 17h26
  2. Réponses: 2
    Dernier message: 18/02/2009, 11h11
  3. comment creer un exe ou dll
    Par giloo(94) dans le forum VBA Access
    Réponses: 0
    Dernier message: 27/11/2007, 15h43
  4. lier un .exe à des dll dans un autre emplacement
    Par Husqvarna dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 19/04/2006, 10h53
  5. [VB] COmment compiler une dll dans un exe (zlib.dll)
    Par Khrysby dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 01/11/2005, 12h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo