DLL
Mise à jour : novembre 2007
Une bibliothèque de liens dynamiques (DLL, Dynamic-Link Library) est un fichier exécutable qui sert de bibliothèque de fonctions partagée. La liaison dynamique permet à un processus d'appeler une fonction ne faisant pas partie de son code exécutable. Le code exécutable de la fonction réside dans une DLL, qui contient une ou plusieurs fonctions compilées, liées et stockées séparément des processus qui les utilisent. Les DLL facilitent également le partage de données et de ressources. Plusieurs applications peuvent accéder simultanément au contenu d'une copie de la DLL en mémoire.
La liaison dynamique diffère de la liaison statique car elle autorise un module exécutable (un fichier .dll ou .exe) à inclure uniquement les informations requises au moment de l'exécution pour rechercher le code exécutable d'une fonction de la DLL. Dans la liaison statique, l'éditeur de liens récupère toutes les fonctions référencées à partir de la bibliothèque de liaison statique et les place avec le code dans l'exécutable.
Par rapport à la liaison statique, l'utilisation de la liaison dynamique offre plusieurs avantages. Les DLL permettent ainsi de diminuer les besoins en mémoire, de réduire l'échange, d'économiser l'espace disque, de faciliter la mise à niveau, d'assurer un support pour les produits « après marché », de fournir un mécanisme d'extension des classes de la bibliothèque MFC, de prendre en charge des programmes utilisant plusieurs langages et de simplifier la création de versions internationales.
Les rubriques suivantes fournissent des informations détaillées à propos de la programmation de DLL.
Dans cette section
Différences entre les applications et les DLL
Décrit les différences fondamentales existant entre les applications et les DLL.Avantages de l'utilisation des DLL
Décrit les avantages de la liaison dynamique.Forum Aux Questions à propos des DLL
Fournit des réponses à des questions fréquentes concernant les DLL.Liaison d'un exécutable à une DLL
Décrit la liaison explicite et implicite à une DLL.Initialisation d'une DLL
Traite du code d'initialisation de la DLL (comme l'allocation de mémoire) qui doit s'exécuter lors du chargement de la DLL.Comportement de la bibliothèque Runtime
Décrit comment la bibliothèque Runtime exécute la séquence de démarrage de la DLL.LoadLibrary et AfxLoadLibrary
Explique l'utilisation de LoadLibrary et de AfxLoadLibrary pour une liaison explicite avec une DLL.GetProcAddress
Aborde l'utilisation de GetProcAddress pour obtenir l'adresse d'une fonction exportée dans la DLL.FreeLibrary et AfxFreeLibrary
Traite de l'utilisation de FreeLibrary et de AfxFreeLibrary lorsque le module DLL n'est plus nécessaire.Chemin de recherche utilisé par Windows pour retrouver une DLL
Décrit le chemin d'accès que le système d'exploitation Windows utilise pour rechercher une DLL sur votre système.États du module d'une DLL normale liée de manière dynamique aux MFC
Décrit les états du module d'une DLL normale liée de manière dynamique aux MFC.DLL d'extension
Décrit les DLL qui implémentent généralement des classes réutilisables dérivées de classes de bibliothèque MFC existantes.Création d'une DLL de ressource uniquement
Traite des DLL de ressource uniquement, qui ne contiennent que des ressources, telles que des icônes, des images bitmap, des chaînes et des boîtes de dialogue.Localisation des ressources dans des applications MFC : DLL satellites
Fournit une prise en charge améliorée pour les DLL satellites, une fonctionnalité qui vous aide à créer des applications localisées pour différentes langues.Importation et exportation
Décrit l'importation de symboles publics dans une application ou l'exportation de fonctions à partir d'une DLL.Technologie active et DLL
Permet l'implémentation complète de serveurs d'objets dans une DLL.Automation dans une DLL
Décrit ce que fournit l'option Automation de l'Assistant DLL MFC.Conventions d'affectation de noms pour les DLL MFC
Décrit comment les DLL et les bibliothèques incluses dans les MFC obéissent aux règles d'une convention d'attribution de noms structurée.Appel de fonctions de la DLL à partir d'applications Visual Basic
Explique comment appeler des fonctions DLL à partir d'applications Visual Basic.
Rubriques connexes
Utilisation de MFC dans le cadre d'une DLL
Décrit les DLL ordinaires, qui vous permettent d'utiliser la bibliothèque MFC dans une bibliothèque de liens dynamiques Windows.Version DLL de MFC
Explique comment utiliser les bibliothèques de liens dynamiques partagées MFCxx.dll et MFCxxD.dll (où x est le numéro de version MFC) avec les applications MFC et les DLL d'extension.Méthodologies de programmation communes
Fournit des liens vers des rubriques qui fournissent des informations conceptuelles sur les bibliothèques Visual C++ et des rubriques qui traitent des différentes technologies et techniques de codage.