Que sont les fichiers DLL et pourquoi en manque-t-il sur mon PC?
Lorsque vous obtenez une erreur indiquant que Windows n'a pas pu trouver un fichier DLL particulier, vous pouvez être vraiment tenté de télécharger le fichier à partir de l'un des nombreux sites DLL disponibles. Voici pourquoi vous ne devriez pas.
Que sont les DLL?
Avant de commencer, pourquoi ne devriez-vous pas télécharger les fichiers DLL (Dynamic Link Library) d’Internet, examinons d’abord ce que sont les fichiers DLL. Un fichier DLL est une bibliothèque contenant un ensemble de codes et de données permettant d’exécuter une activité particulière dans Windows. Les applications peuvent ensuite appeler ces fichiers DLL lorsqu'elles ont besoin de cette activité. Les fichiers DLL ressemblent beaucoup aux fichiers exécutables (EXE), sauf que les fichiers DLL ne peuvent pas être exécutés directement dans Windows. En d'autres termes, vous ne pouvez pas double-cliquer sur un fichier DLL pour l'exécuter de la même manière qu'un fichier EXE. Au lieu de cela, les fichiers DLL sont conçus pour être appelés par d'autres applications. En fait, elles sont conçues pour être utilisées simultanément par plusieurs applications. La partie «lien» du nom de la DLL suggère également un autre aspect important. Plusieurs DLL peuvent être liées ensemble. Ainsi, lorsqu'une DLL est appelée, plusieurs autres DLL sont également appelées simultanément..
Windows lui-même utilise beaucoup les DLL, comme une visite guidée du C: \ Windows \ System32
dossier peut vous dire. A titre d'exemple, considérons le fichier système Windows «comdlg32.dll». Ce fichier, également appelé bibliothèque de boîtes de dialogue commune, contient le code et les données nécessaires à la construction de nombreuses boîtes de dialogue courantes que vous voyez dans. Des boîtes de dialogue Windows pour, par exemple, ouvrir des fichiers, imprimer des documents, etc. Les instructions de cette DLL traitent de tout, depuis la réception et l'interprétation des messages destinés à la boîte de dialogue jusqu'à la spécification de l'apparence de la boîte de dialogue sur votre écran. Il est évident que plusieurs applications peuvent appeler cette DLL en même temps, sinon vous ne pourriez pas ouvrir une boîte de dialogue (comme celle ci-dessous) dans plusieurs applications à la fois..
Les DLL permettent la modularisation et la réutilisation du code, ce qui signifie que les développeurs n'ont pas besoin de passer du temps à écrire du code à partir de zéro pour exécuter des fonctions banales ou communes. Et bien que les développeurs créent leurs propres DLL à installer avec leurs applications, la grande majorité des DLL appelées par les applications sont en réalité associées à Windows ou à des packages supplémentaires, tels que Microsoft .NET Framework ou Microsoft C ++ Redistributables. L'autre grand avantage de la modularisation du code de cette façon est qu'il est plus facile d'appliquer les mises à jour à chaque DLL plutôt qu'à une application entière, surtout lorsque ces DLL ne proviennent pas du développeur de l'application. Par exemple, lorsque Microsoft met à jour certaines DLL dans son .NET Framework, toutes les applications utilisant ces DLL peuvent immédiatement tirer parti de la sécurité ou des fonctionnalités mises à jour..
Les DLL téléchargées peuvent être obsolètes
Alors, avec un peu de compréhension des DLL à notre actif, pourquoi ne pas les télécharger depuis Internet quand il en manque une dans votre système?
Le problème le plus courant que vous rencontrez avec les DLL téléchargées est qu'elles sont obsolètes. De nombreux sites de DLL obtiennent leurs DLL en les téléchargeant simplement à partir de leurs propres ordinateurs ou de ceux de leurs utilisateurs. Vous pouvez probablement déjà voir le problème. La plupart de ces sites ne souhaitent que votre trafic, et une fois la DLL chargée, ils ne sont guère incités à s'assurer que le fichier est mis à jour. Ajoutez à cela que les fournisseurs ne publient généralement pas les DLL mises à jour au public en tant que fichiers individuels, et vous pouvez voir que même les sites essayer garder les fichiers à jour ne risque pas d'avoir beaucoup de succès.
Il y a aussi le problème supplémentaire suivant: les DLL sont généralement intégrées dans des packages. Une mise à jour d'une DLL d'un package est souvent accompagnée de mises à jour d'autres DLL associées du même package, ce qui signifie que même dans le cas peu probable où vous obtiendrez un fichier DLL à jour, vous n'obtiendrez pas les fichiers associés contenant également été mis à jour.
Les DLL téléchargées peuvent être infectées
Bien que moins commun, un problème potentiellement bien pire est que les DLL que vous téléchargez à partir de sources autres que le fournisseur peuvent parfois contenir des virus ou d’autres logiciels malveillants pouvant infecter votre PC. Cela est particulièrement vrai sur les sites qui ne font pas très attention à l'endroit où ils récupèrent leurs fichiers. Et ce n'est pas comme si ces sites allaient faire de leur mieux pour vous parler de leurs sources à risque. La partie vraiment effrayante est que si vous téléchargez un fichier DLL infecté, vous risquez, de par la nature même des fichiers DLL, de donner à ce fichier un accès plus complexe que celui qu'un fichier infecté normal pourrait obtenir..
La bonne nouvelle est qu'une bonne application antivirus en temps réel peut généralement détecter ces fichiers DLL infectés avant qu'ils ne soient réellement enregistrés sur votre système et les empêcher de causer des dommages. Néanmoins, vous devez vous rappeler que même un bon programme antivirus ne vous fournira peut-être pas une protection parfaite. Si vous prenez l'habitude de télécharger des fichiers à risque, vous serez probablement rattrapé par la suite. Il est préférable d'éviter ces sites de DLL.
Ils ne seront probablement pas résoudre votre problème de toute façon
Bien qu'il soit possible qu'un seul fichier DLL sur votre PC ait été corrompu ou supprimé, il est plus probable que d'autres DLL ou fichiers d'application associés soient également corrompus ou manquants. Si vous obtenez une erreur sur un fichier en particulier, c'est parce qu'il s'agit de la première erreur rencontrée par une application avant de se bloquer et que vous n'êtes simplement pas averti du reste. Cela peut être vrai quelle que soit la cause du problème.
Pourquoi les DLL peuvent-elles disparaître ou être corrompues? Il se peut qu'une autre application ou mise à jour errante ait tenté de remplacer le fichier et échoué ou qu'elle ait été remplacée par une copie obsolète. Il peut s'agir d'une erreur lors de l'installation de votre application principale ou d'un package tel que .NET. Il se peut même que vous rencontriez un autre problème, tel que des secteurs défectueux sur votre disque dur, qui empêchent le chargement du fichier correctement..
Comment puis-je réparer mon erreur DLL?
Le seul moyen de vous assurer d'obtenir une DLL stable, à jour et propre est de l'obtenir par le biais de la source d'origine. Typiquement, cette source sera:
- Votre support d'installation Windows. Il est peu probable que vous puissiez simplement copier un fichier DLL à partir de votre support d'installation, mais vous avez une option rapide à essayer avant de faire quelque chose d'aussi radical que de réintégrer Windows. Vous pouvez utiliser l'outil de protection des ressources Windows (souvent appelé vérificateur de fichiers système ou SFC), qui analysera et réparera les fichiers système corrompus ou manquants dans Windows. Vous devriez avoir votre support d'installation à portée de main lors de l'exécution de l'outil, juste au cas où il aurait besoin de copier un fichier à partir de là. (Si vous ne possédez pas de disque d'installation, vous pouvez en télécharger un ici.)
- Les packages Microsoft .NET Framework. Plusieurs versions de .NET sont automatiquement installées avec Windows, et de nombreuses applications installent également des fichiers à partir de ces packages. Vous pouvez lire notre article sur le framework .NET, qui contient également des conseils pour la recherche et la réparation des problèmes associés..
- Divers packages redistribuables Microsoft Visual C ++. Selon les applications que vous utilisez, plusieurs versions de C ++ Redistributable peuvent être installées sur votre PC. Il peut parfois être difficile de déterminer lequel est le coupable, mais notre article sur les redistribuables C ++ constitue un bon point de départ. Il contient également plusieurs étapes de dépannage et des liens permettant de télécharger les versions les plus récentes directement de Microsoft..
- L'application fournie avec la DLL. Si la DLL a été installée avec une application plutôt que de faire partie d'un package séparé, la meilleure solution consiste simplement à réinstaller l'application. Certaines applications vous permettent d'effectuer une réparation au lieu d'une réinstallation complète. L'une ou l'autre option devrait fonctionner, car une réparation recherche généralement les fichiers manquants dans les dossiers d'installation..
Si tout cela échoue, vous pourrez peut-être contacter le fournisseur de l'application et demander une copie d'un fichier DLL individuel. Certaines entreprises sont ouvertes à cette demande; certains ne le sont pas. Si vous rencontrez une entreprise qui ne fournit pas de fichiers individuels, elle peut au moins être en mesure de vous proposer d'autres suggestions pour résoudre votre problème..