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 :

Comment sortir d'une dll ?


Sujet :

Langage Delphi

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Comment sortir d'une dll ?
    J'ai un petit probleme : j'ai créé une dll, et dans ma partie principale j'instancie divers éléments : des timers, ... Tout va bien mais lorsque je quitte le programme qui appele la dll il faut que je libere mes variables sinon ca cause un message d'erreur. J'aimerais donc savoir comment faire pour que lorsque la dll est "déchargée" du programme une procédure soit appelée ou je pourrais mettre toutes les actions a effectuer (j'appele actuellement une procédure "manuellement" mais lorsque l'utilisateur appuie sur Alt+F4 le message d'erreur persiste ...

  2. #2
    Membre actif Avatar de TMuet
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Septembre 2003
    Messages
    225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2003
    Messages : 225
    Points : 288
    Points
    288
    Par défaut
    En Delphi, tu as la procédure DLLProc qui s'exécute automatiquement au lancement et à la fermeture de la DLL.

    Il suffit de tester dwReason qui vaut DLL_PROCESS_ATTACH et DLL_PROCESS_DETACH au lancement ou à la fermeture.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    case dwReason of
      DLL_PROCESS_ATTACH:
      begin
        // Allocation de tes variables
      end;
      DLL_PROCESS_DETACH:
      begin
        // Libération de tes variables
      end;
    end;

  3. #3
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    NIKEL ! Merci beaucoup.

  4. #4
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Autre méthode : utiliser les clauses initialization et finalization qui sont appelée respectivements au chargement et au déchargement de la dll.

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

Discussions similaires

  1. [C#] Comment sortir d'une méthode void ?
    Par dcollart dans le forum C#
    Réponses: 4
    Dernier message: 14/09/2010, 14h58
  2. Réponses: 4
    Dernier message: 15/06/2007, 15h08
  3. Comment sortir d'une fonction?
    Par Kobe70 dans le forum Langage
    Réponses: 3
    Dernier message: 10/05/2007, 13h44
  4. Comment sortir d'une fonction ?
    Par serialkilled dans le forum Langage
    Réponses: 3
    Dernier message: 16/12/2006, 12h30
  5. Comment sortir d'une itération ?
    Par dessinateurttuyen dans le forum Langage
    Réponses: 10
    Dernier message: 08/08/2006, 18h21

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