pytanie zadane 11 lutego 2022 w Informatyka przez użytkownika

1 odpowiedź

odpowiedź 11 lutego 2022 przez użytkownika

Pliki DLL, a dokładniej mówiąc biblioteki DLL są specjalnymi pikami systemów z rodziny Windows, w których zapisane są wspólne funkcje wykorzystywane przez różne aplikacje. Sama nazwa jest skrótem od angielskich słów Dynamic Link Library, czyli po polsku biblioteka dołączana dynamiczna. Inną nazwa z którą można się tez spotkać, to biblioteki współdzielone.

Podstawowym zadaniem plików DLL, jest przechowywanie w jednym miejscu wspólnych funkcji, które są używane jednocześnie przez wiele programów w Windowsie. Dzięki temu oszczędzane są zasoby komputera, a pliki systemowe nie są powielane. Biblioteki DLL zawierają najczęściej używane funkcje, dzięki czemu ułatwione jest korzystanie ze środowiska Windows. W plikach DLL np. przechowywane są najważniejsze funkcje interfejsu systemu Windows.

Pliki bibliotek DLL możemy rozpoznać po tym, że mają rozszerzenie .dll

W systemach Windows systemowe biblioteki DLL przechowywane są w katalogach:

C:\Windows\System
C:\Windows\System32

Natomiast pliki DLL, które wykorzystywane są przez programy, z reguły instalowane są w katalogach instalacyjnych tych programów. Oczywiście jeśli dany program wykorzystuje biblioteki systemowe, to wtedy korzysta z już dostępnych w lokalizacjach, które były wyżej podane.

Przykłady plików DLL:

SHELL.DLL - zawiera funkcje systemu, m.in reguły przeciąganie ikon, wygląd ikon

kernel32.dll - podstawowe funkcje systemowe, które udostępniają kod i dane windowsowi i aplikacją

user32.dll - zawiera funkcję do wyświetlania nowych okien programów


Problemy z plikami DLL

Pomimo wielu zalet bibliotek DLL, mają one również wady. Może się zdarzyć, że jakaś biblioteka zostanie usunięta wraz z programem, przez co inne aplikacje z niej korzystające  również przestaną działać. Cały urok współdzielenia zasobów.


Sprawdzanie załadowanych bibliotek

Jeśli chcesz sprawdzić jakie biblioteki DLL są aktualnie załadowane w Twoim systemie Windows, możesz to sprawdzić w narzędziu systemowym o nazwie Informacje o systemie. Aby go uruchomić klikasz na klawiaturze Windows + R i wpisujesz polecenie msinfo32. Uruchomi się okienko w którym po lewej stronie wybierasz Środowisko oprogramowania -> Załadowane moduły. Po prawej stronie wyświetlą się wszystkie biblioteki DLL załadowane w systemie, te systemowe (od Microsoftu) jak i te używane przez zewnętrzne aplikacje zainstalowane przez użytkownika.


Rejestrowanie bibliotek w Windows

Może zdarzyć się tak, że z jakiegoś powodu w systemie występują błędy plików DLL, zostały one skasowane lub istnieje potrzeba wgrania nowszych wersji plików. Jest możliwość wgrania od nowa plików .dll lub aktualizacji istniejących, ale tutaj nie wystarczy samo przekopiowanie plików. Trzeba je jeszcze zarejestrować w systemie za pomocą programu RegSvr32. Dzięki niemu wprowadzone zostaną do rejestru nowe klasy, które będą wskazywać aplikacjom na odpowiednie pliki DLL. Aby uruchomić program wybierasz z klawiatury Windows + R i wpisujesz regsvr32.exe + <plik.dll>, zgodnie z poniższą instrukcją:

rejestrowanie bibliotek DLL


Naprawianie problemów z plikami DLL

Może zdarzyć się tak, że jakiś systemowy plik DLL został uszkodzony i przez to komputer zawiesza się lub wyskakują różne błędy z tym związane. W tym przypadku system Windows oferuje narzędzie systemowe System File Check (SFC.exe), które możesz uruchomić z wiersza poleceń (jako administrator) wpisując polecenie:

sfc.exe /scannow

Program sprawdzi w systemie wszystkie chronione pliki systemowe (nie tylko DLL) i jeśli będzie taka potrzeba, to zastąpi uszkodzone pliki oryginalnymi wersjami z Windowsa.

...