Gra uruchamia się normalnie, ale po kliknięciu ikony programu księgowego albo edytora pojawia się komunikat „Aplikacja nie została właściwie uruchomiona” z kodem 0xc000007b. Najczęściej Windows nie potrafi załadować któregoś pliku programu, często przez niezgodną architekturę lub uszkodzenie, ale sam kod nie wskazuje, który plik zawinił.

Najpierw ustal, czy problem dotyczy jednej aplikacji
- Jedna aplikacja nie startuje: zacznij od naprawy jej instalacji lub weryfikacji plików w launcherze.
- Program i biblioteka DLL muszą mieć zgodne architektury; 64-bitowy Windows może uruchamiać aplikacje 32-bitowe.
- Nie pobieraj pojedynczych DLL z przypadkowych stron i nie kopiuj ich do folderów systemowych.
- DISM i SFC zostaw na sytuację, w której błąd dotyczy wielu aplikacji lub podejrzewasz uszkodzenie plików Windows.
Kod opisuje problem z formatem pliku, a nie gotową diagnozę
0xc000007b to status STATUS_INVALID_IMAGE_FORMAT. Windows nie może poprawnie załadować pliku wykonywalnego lub biblioteki. Częstym powodem jest niezgodność 32-bitowej i 64-bitowej wersji składników, lecz przyczyną może być też uszkodzony plik albo niepasująca zależność.
To rozróżnienie oszczędza czas. Sama obecność błędu nie dowodzi, że trzeba doinstalować konkretny plik DLL ani że brakuje pakietu Visual C++. Uważam, że przypadkowe podmienianie bibliotek jest szczególnie złym pierwszym krokiem: można dołożyć kolejną wersję niezgodną z aplikacją, a plik z nieznanego źródła może być zmodyfikowany.
Zakres awarii podpowiada, od czego zacząć
Jeśli pozostałe programy działają, szukaj problemu w instalacji tej jednej aplikacji lub jej zależnościach. Gdy błąd pojawia się w kilku niezależnych programach, rośnie sens sprawdzenia składników wspólnych albo plików systemu. Poniższa tabela pomaga wybrać pierwszy ruch zamiast wykonywać wszystkie porady z internetu po kolei.
| Sytuacja | Prawdopodobny trop | Co zrobić |
|---|---|---|
| Błąd występuje tylko w jednej grze z launchera | Uszkodzone lub niekompletne pliki gry | Użyj w launcherze funkcji weryfikacji lub naprawy plików; jeśli jej nie ma, zainstaluj grę ponownie z oficjalnego źródła. |
| Jedna aplikacja przestała działać po aktualizacji lub podmianie plików | Niezgodny składnik w katalogu programu | Przywróć oryginalne pliki przez naprawę instalacji albo ponowną instalację. Usuń modyfikacje dopiero wtedy, gdy wiesz, które pliki zmieniły. |
| Komunikat pojawia się w wielu aplikacjach, także wcześniej działających | Uszkodzenie wspólnego składnika lub plików Windows | Napraw wymagane pakiety uruchomieniowe z oficjalnego źródła, a potem uruchom DISM i SFC. |
| Program .NET zgłasza błąd po dołączeniu natywnej biblioteki | Proces i biblioteka mogą mieć różne architektury | Sprawdź architekturę pliku EXE i DLL oraz ustawienia kompilacji projektu. |
Jeśli problem dotyczy jednego programu, zacznij od jego naprawy, nie od ingerencji w cały system. Taka kolejność zawęża poszukiwania i ogranicza ryzyko popsucia składników, których używają inne aplikacje.
Wersję pakietu dobieraj do aplikacji, nie tylko do Windows
Na komputerze z 64-bitowym Windowsem mogą działać aplikacje 32-bitowe i 64-bitowe. Dlatego informacja „mam system x64” nie rozstrzyga, jakiej wersji zależności potrzebuje konkretny program. Liczy się architektura aplikacji oraz biblioteki, której próbuje użyć.
Dotyczy to także Microsoft Visual C++ Redistributable, pakietu bibliotek potrzebnych programom zbudowanym przy użyciu narzędzi Visual C++. Dokumentacja Microsoft Learn wskazuje, że architektura pakietu ma odpowiadać architekturze aplikacji; na systemie x64 wersje x86 i x64 mogą być potrzebne równolegle, bo obsługują różne programy.
W praktyce, jeśli instalator aplikacji dostarcza wymagany pakiet lub podaje jego wersję, skorzystaj z tego wskazania. W przeciwnym razie pobieraj pakiety uruchomieniowe wyłącznie ze strony producenta programu lub Microsoftu. Nie odinstalowuj wszystkich wersji Visual C++ „na próbę”, bo inne aplikacje mogą zależeć od już zainstalowanych wydań.
W aplikacji .NET sprawdź Platform target i natywne DLL
Program napisany w .NET może uruchamiać się poprawnie, dopóki nie spróbuje załadować biblioteki natywnej, czyli skompilowanej dla konkretnego procesora i systemu. Wtedy ustawienie projektu Any CPU nie gwarantuje zgodności wszystkich zależności: biblioteka DLL może wymagać procesu x86 albo x64.
Przykład: aplikacja dla architektury x64 odwołuje się do natywnej biblioteki skompilowanej wyłącznie dla x86. Sam komputer i system mogą być sprawne, ale ładowanie tej zależności się nie powiedzie. W dokumentacji Microsoft Learn opis BadImageFormatException wskazuje niezgodne platformy jako jeden z typowych powodów problemów z formatem zestawu; przy diagnozie trzeba więc sprawdzić także architekturę bibliotek, a nie sam plik EXE.
Jeśli rozwijasz taki program, porównaj ustawienie Platform target z architekturą natywnego DLL oraz konfiguracją publikacji. Sprawdź też, czy aplikacja nie ładuje przypadkiem innej kopii biblioteki z katalogu roboczego lub ze ścieżki systemowej. W projekcie wdrożeniowym zgodność całego łańcucha zależności jest ważniejsza niż sama wartość ustawiona dla głównego projektu.
Naprawiaj pliki Windows dopiero przy szerszym problemie
Gdy problem dotyczy wielu programów albo aplikacja nadal nie startuje po naprawie jej instalacji i zależności, użyj wbudowanych narzędzi Windows. Microsoft Support zaleca najpierw uruchomić DISM, a po nim sprawdzanie plików systemowych SFC; operacje wykonaj w Terminalu lub Wierszu polecenia uruchomionym jako administrator.
- Uruchom polecenie
DISM.exe /Online /Cleanup-image /Restorehealthi poczekaj na zakończenie. - Uruchom
sfc /scannowi pozostaw okno otwarte do zakończenia skanowania. - Uruchom ponownie komputer i sprawdź aplikację ponownie.
Te narzędzia kontrolują składniki Windows, więc nie naprawią błędnej konfiguracji Platform target ani uszkodzonych plików konkretnej gry. Jeśli tylko jedna aplikacja nadal zwraca kod, wróć do jej instalatora, launchera lub producenta. Jeśli po naprawie systemu błąd obejmuje wiele programów, zachowaj wynik skanowania i przekaż go pomocy technicznej wraz z nazwami aplikacji, które nie startują.
