Une Bibliothèque de Liens Dynamiques (DLL) est une bibliothèque contenant du code et des données qui peuvent être utilisés par plusieurs programmes simultanément. Les DLL sont une partie cruciale du système d'exploitation Windows, permettant aux applications de partager du code et des ressources, réduisant ainsi la duplication de code et l'utilisation de la mémoire. Au lieu que chaque programme contienne le même code, ils peuvent tous accéder au code partagé au sein de la DLL. Cela permet également des mises à jour et une maintenance plus faciles, car les modifications apportées à la DLL sont répercutées dans toutes les applications qui l'utilisent. Les DLL peuvent contenir des fonctions, des classes, des variables et des ressources telles que des icônes et des bitmaps. Elles sont typiquement utilisées pour implémenter des fonctionnalités communes, telles que l'impression, la mise en réseau ou l'accès aux bases de données. Lorsqu'un programme appelle une fonction dans une DLL, le système d'exploitation charge la DLL en mémoire (si elle n'est pas déjà chargée) et exécute la fonction. Les DLL peuvent être chargées implicitement (au démarrage du programme) ou explicitement (pendant l'exécution du programme). Leur nature modulaire est fondamentale pour l'architecture logicielle moderne.