Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa

Darmowa diagnoza laptopa

Dojazd do klienta bezpłatnie

Dojazd do klienta bezpłatnie

Laptopy zastępcze bezpłatnie

Laptopy zastępcze bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

STATUS_DLL_NOT_FOUND

Termin Definicja
STATUS_DLL_NOT_FOUND

STATUS_DLL_NOT_FOUND to kod błędu wskazujący na brak wymaganej biblioteki DLL w ścieżkach wyszukiwania systemu.

Co oznacza kod STATUS_DLL_NOT_FOUND

STATUS_DLL_NOT_FOUND jest kodem statusu systemu Windows oznaczającym, że moduł wykonywalny nie może zostać załadowany, ponieważ wymagana biblioteka DLL nie została znaleziona w lokalizacjach przeszukiwanych przez mechanizm ładowania systemu. Wartość tego statusu to 0xC0000135. DLL, czyli biblioteka dołączana dynamicznie, zawiera kod lub dane wykorzystywane przez program albo przez inną bibliotekę. Program może więc zakończyć się jeszcze przed wyświetleniem głównego okna, jeśli jedna z jego zależności nie zostanie odnaleziona.

Komunikat nie zawsze oznacza, że brakuje biblioteki bezpośrednio wskazanej przez plik EXE. Ładowanie odbywa się hierarchicznie: program może wymagać biblioteki A, biblioteka A może wymagać biblioteki B, a dopiero biblioteka B może być faktycznie nieobecna. Z tego powodu sama nazwa DLL pokazana w komunikacie nie zawsze wystarcza do ustalenia przyczyny. Podobny efekt może wystąpić po usunięciu pliku, niepełnej aktualizacji, błędnej deinstalacji programu albo przeniesieniu pliku wykonywalnego bez dołączonych bibliotek.

Jak Windows wyszukuje wymaganą bibliotekę

System Windows korzysta z ustalonego mechanizmu wyszukiwania bibliotek, którego szczegóły zależą między innymi od sposobu uruchomienia procesu, ustawień bezpiecznego wyszukiwania DLL oraz użytych funkcji programistycznych. Znaczenie może mieć katalog zawierający program, katalog systemowy Windows, katalog systemowy 32-bitowy w systemie 64-bitowym, bieżący katalog procesu oraz katalogi wskazane w zmiennej środowiskowej PATH. Program może także używać jawnie określonych katalogów, manifestów lub mechanizmu ładowania z pełną ścieżką.

Istotna jest architektura pliku. Biblioteka przeznaczona dla procesu 32-bitowego nie jest automatycznie zamiennikiem biblioteki 64-bitowej i odwrotnie. W systemie 64-bitowym istnieją odrębne katalogi systemowe, między innymi System32 dla podstawowych bibliotek 64-bitowych oraz SysWOW64 dla komponentów używanych przez aplikacje 32-bitowe. W praktyce błąd może wynikać nie tylko z braku pliku, lecz także z umieszczenia właściwie nazwanej biblioteki w katalogu, którego dany proces nie przeszukuje.

Różnica między brakiem DLL a innymi błędami ładowania

STATUS_DLL_NOT_FOUND należy odróżnić od błędu STATUS_ENTRYPOINT_NOT_FOUND, oznaczanego wartością 0xC0000139. Drugi z nich wskazuje, że biblioteka została odnaleziona, ale nie udostępnia funkcji lub symbolu oczekiwanego przez program. Przyczyną bywa wtedy niezgodna wersja biblioteki, pomieszanie plików pochodzących z różnych wydań programu albo niezgodność interfejsu binarnego. Jeszcze innym przypadkiem jest błąd inicjalizacji DLL, gdy plik istnieje, lecz nie może zostać prawidłowo uruchomiony.

W komunikatach aplikacji często pojawia się także systemowy błąd Win32 ERROR_MOD_NOT_FOUND o numerze 126, opisywany jako „The specified module could not be found”. Ten komunikat może dotyczyć zarówno głównej biblioteki, jak i jednej z jej zależności. Wartość 126 nie dowodzi więc, że plik wymieniony w komunikacie jest jedynym brakującym elementem. Diagnostyka powinna uwzględniać importy biblioteki, architekturę procesu, ścieżki wyszukiwania oraz sposób instalacji konkretnego programu.

Bezpieczna diagnostyka i przywrócenie działania programu

Pierwszym krokiem jest ustalenie, która aplikacja zgłasza błąd, kiedy problem wystąpił oraz czy zmieniano ostatnio jej instalację, sterowniki, aktualizacje systemu lub zawartość katalogu programu. Nie należy pobierać pojedynczej DLL z przypadkowych stron internetowych i kopiować jej do katalogu systemowego. Taki plik może pochodzić z innej wersji, mieć inną architekturę albo zawierać niepożądane modyfikacje. Bezpieczniejsze jest użycie instalatora źródłowego programu, funkcji naprawy instalacji lub ponownej instalacji właściwego pakietu producenta.

W przypadku aplikacji systemowych można sprawdzić integralność plików Windows za pomocą narzędzia sfc /scannow uruchomionego z uprawnieniami administratora. Jeżeli problem dotyczy składników obrazu systemu, używane jest także narzędzie DISM, na przykład polecenie DISM /Online /Cleanup-Image /RestoreHealth. Wyniki tych operacji trzeba interpretować w odniesieniu do konkretnego komunikatu i dzienników systemowych, ponieważ nie zastępują one analizy zależności aplikacji. Warszawskie Pogotowie Komputerowe wykonuje diagnostykę i naprawę laptopów, komputerów PC oraz ich podzespołów, gdy błąd STATUS_DLL_NOT_FOUND uniemożliwia uruchomienie potrzebnego oprogramowania.