Meestal komen we alleen DLL-bestanden tegen wanneer een bepaalde software niet kan werken vanwege het ontbreken van een of ander .dll- bestand. Na deze prompt gaan we online om dat DLL-bestand te downloaden, het in de juiste map te plaatsen en de software te laten werken. En dat is het - zaak gesloten over DLL-bestanden.

Het zou echter interessant moeten zijn om meer over deze specifieke bestanden te begrijpen. Ze lijken belangrijk, omdat hun afwezigheid kan voorkomen dat software loopt, dus wat zijn ze eigenlijk? En hoe werken ze? Laten we wat antwoorden krijgen.

DLL-bestanden?

Bijna iedereen heeft ooit DLL-bestanden verwerkt, vaak als een nieuw geïnstalleerde software niet werkt omdat een van die bestanden ontbreekt.

DLL staat voor "Dynamic-Link Library" en is Microsoft's implementatie van het gedeelde bibliotheekconcept in de besturingssystemen Microsoft Windows en OS / 2. Ze zijn in essentie hetzelfde als EXE's, maar worden anders genoemd vanwege de duidelijkheid in het koppelingsproces. DLL-bestanden kunnen echter niet rechtstreeks worden uitgevoerd, vandaar het bestaan ​​van hulpprogramma's als rundll.exe en rundll32.exe .

DLL-bestanden zijn niets meer dan een middel voor ontwikkelaars om gedeelde code en gegevens te gebruiken, waardoor ze functionaliteiten kunnen upgraden zonder applicaties opnieuw te hoeven koppelen of opnieuw te compileren. Met andere woorden, DLL-bestanden bevatten code en gegevens die door verschillende toepassingen worden gebruikt. Een enkel DLL-bestand kan door verschillende toepassingen worden gebruikt, als dit vereist is, waardoor meerdere exemplaren van dezelfde informatie niet meer nodig zijn.

Hoe werken DLL-bestanden?

Stel u twee aparte bestanden voor: "example.exe", een algemeen uitvoerbaar bestand en "library.dll", een DLL die door dat uitvoerbare bestand wordt gebruikt. Hoe worden die bestanden verbonden door het besturingssysteem wanneer "example.exe" wordt uitgevoerd?

Wanneer "example.exe" wordt uitgevoerd, wordt het door het besturingssysteem geladen en wordt een gegevenstabel aangetroffen, waarin staat dat dit (uiteraard niet in woorden) "dit programma de volgende lijst met functies uit het DLL-bestand library.dll gebruikt", wat technisch genaamd "imports" of "geïmporteerde functies" uit de DLL "library.dll" in het programma "example.exe."

Vervolgens zoekt de ladercode naar "library.dll" en, als deze wordt gevonden, wordt het bestand geladen. Binnen dit DLL-bestand is er een andere lijst, genaamd "exportlijst", die specifieke adressen verbindt met elk van de functies in het DLL-bestand. Vanaf dit punt, wanneer "example.exe" een functie moet aanroepen vanuit "library.dll", gebruikt het eenvoudig dat adres.

DLL-bestanden ophalen en opslaan

Wanneer een bepaalde software een DLL-bestand mist, is de gebruikelijke methode om dat bestand online te doorzoeken en op te slaan op onze harde schijf. Het zal werken als je de DLL in de map van de software plaatst, maar zoals ik hierboven heb uitgelegd, kan verschillende software dat bestand nodig hebben, dus het is beter om het op te slaan waar ze het allemaal kunnen bereiken - en dat is de "System32" map (C : \ Windows \ System32). x64 gebruikers moeten het DLL-bestand ook kopiëren naar "C: \ Windows \ SysWOW64" (beide bewerkingen hebben beheerdersrechten nodig om te worden uitgevoerd).

Deze methode wordt echter niet door iedereen aanbevolen, omdat dit enkele risico's kan opleveren, zoals verouderde DLL's, virusinfecties enzovoort. Vanuit mijn persoonlijke ervaring heb ik nooit problemen gehad met DLL-bestanden (ik haal ze meestal van deze site, maar zorg ervoor dat je de optie "Download zipbestand" gebruikt om software van derden te vermijden), dus uiteindelijk komt het erop neer dat persoonlijke smaak.

Wist u deze informatie over DLL-bestanden? Ontbreekt er iets belangrijks in dit artikel? Laat het ons weten in de comments.