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

 Delphi Discussion :

Charger une dll directement dans l'application


Sujet :

Delphi

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 427
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 427
    Points : 1 326
    Points
    1 326
    Par défaut Charger une dll directement dans l'application
    Bonsoir à toutes et à tous, j'ai une application qui charge une dll mais j'aimerai que cette dll soit compilée avec l'application ce qui m'éviterai de la communiquer, est ce possible ?

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    Const
    NomDelaDLL = 'madll.dll';
    ...........
     
     //Appel de la librairie
     HandleDLL := LoadLibrary(PChar(ExtractFilePath(Application.Exename)+NomDelaDLL));
     
    // Contrôle que la librairie est bien chargée
     If HandleDLL = 0 Then Raise Exception.Create('La Librairie '+NomDeLaDll+ ' n ''a pu être chargée');
    Merci de m'éclairer,

    @ +,

    Cincap

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 302
    Points
    11 302
    Billets dans le blog
    6
    Par défaut
    regarde DllMemoryLoader :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    {
      DLL Loader by Aphex
      http://www.iamaphex.cjb.net
      unremote@knology.net
     
      Based on code from gmm@ufacom.ru
     
      function xLoadLibrary(Src: Pointer; Imports: array of TImportItem): TLibInfo;
      procedure xFreeLibrary(hModule: TLibInfo);
    }
     
    unit DLLUnit;
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    le principe de la dll est justement d'etre un fichier externe à l'exe.
    si tu as le source de la dll, tu peux directement ajouter ses unités a ton dpr.
    Sinon, tu peux peut etre la stocker en RC_DATA dans les resources de ton dpr, l'ecrire sur le disuqe et la charger à l'initialization, puis le liberer et l'effacer à la finalization, mais je ne suis pas sur que ce soit tip-top.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 427
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 427
    Points : 1 326
    Points
    1 326
    Par défaut
    Merci @ guillemouze et @ tourlourou, en effet j'avais pensé a un fichier ressource mais comme tu le dis si bien, ce n'est pas au top.

    Enfin c'était une idée comme cela de pouvoir l'extraire de la ressource, la copier puis l'utiliser.

    Merci encore pour la direction à prendre.

    Je cloture le topic.

    @+,

    Cincap

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/04/2012, 11h08
  2. Charger une classe contenue dans un .dll
    Par NLS le pingouin dans le forum Langage
    Réponses: 4
    Dernier message: 21/05/2010, 15h42
  3. charger une dll C dans un code C++
    Par Nehmé dans le forum Visual C++
    Réponses: 6
    Dernier message: 04/09/2009, 17h28
  4. Appel direct d'une DLL Fortran dans une macro
    Par papiotte dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/10/2007, 10h32
  5. Réponses: 3
    Dernier message: 24/11/2006, 11h12

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