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

Langage Delphi Discussion :

Charger et décharger dynamiquement une DLL


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 109
    Points : 45
    Points
    45
    Par défaut Charger et décharger dynamiquement une DLL
    Bonjour,
    J'aimerais comprendre :
    Dans mon programme l'unité principale lance (lors d'un choix peut utilisé) une unité qui doit dans OnShow charger dynamiquement une DLL (qui est en principe dans le répertoire de l'application).
    Dans Onclose de cette dernière unité la DLL est décharge :
    FreeLibrary(Handle_RTF_Vers_HTM);
    Handle_RTF_Vers_HTM:=0;
    Remarques :
    1) Quand j'exécute le programme en l'absence de la DLL le chargement ne peut pas se faire. Tout à fait normal !
    2) Cette fois la DLL est présente et le chargement se fait normalement. Heureusement !
    3) Le programme étant toujours exécuté j'efface la DLL (possible que si elle est déchargé) et pourtant l'application peut continuer à l'utiliser sans problème.
    Quelles explications ?
    Windows garde-t-il dans la mémoire la DLL malgré FreeLibrary et son effacement ?
    Mais alors à quel moment est-elle réellement enlevée de la mémoire ?
    D'avance merci.

  2. #2
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 784
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 784
    Points : 5 915
    Points
    5 915
    Par défaut
    Bonjour,

    Que fait votre dll ?
    Met-elle en place un hook (clavier, souris, etc) ?
    La dll est normalement déchargée à sa libération (si le compteur de référence associé vaut 0) sauf dans le cas de la mise en place de hook non retiré où donc elle reste en mémoire...
    Philippe.

Discussions similaires

  1. [C#][1.1] Comment ouvrir en dynamique une dll
    Par jmperuchot dans le forum C#
    Réponses: 11
    Dernier message: 19/02/2009, 09h46
  2. [VB.NET]Charger et décharger dynamiquement des fichiers DLL
    Par leSeb dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/08/2006, 11h31
  3. Réponses: 5
    Dernier message: 14/05/2006, 12h57
  4. [D6] Charger dynamiquement une DLL
    Par Lung dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2006, 08h04
  5. Comment charger un TFrame depuis une dll ?
    Par Millenod dans le forum Langage
    Réponses: 29
    Dernier message: 22/12/2004, 14h48

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