ERROR_DLL_NOT_FOUND (0X00000485) — what's really happening
Windows says a DLL file is missing. Usually it's still there but Windows can't find it because the path is broken or the DLL is corrupt.
You're trying to run an application and Windows hits you with ERROR_DLL_NOT_FOUND (0X00000485). The full text says "One of the library files needed to run this application cannot be found." This error shows up most often right after you install a new program or update an existing one. Sometimes it pops up when Windows Update breaks something in the background.
What's actually happening here is that the application's loader — part of Windows itself — is looking for a specific DLL file and can't find it in any of the expected locations. The DLL might still exist on disk, but the path is wrong, or the file is corrupt. The system doesn't care if the file is sitting in a random folder; it only looks in specific directories: the application's own folder, the system folders (C:\Windows\System32 and C:\Windows\SysWOW64), and the directories listed in the PATH environment variable.
Let's walk through the three most common causes, starting with the one you should check first.
Cause 1: The DLL is actually missing or corrupt
This is the most common scenario. The DLL was part of a shared runtime, like Visual C++ Redistributable or DirectX, and that runtime got uninstalled, corrupted by an update, or never installed in the first place.
Step 1: Find out which DLL is missing
The error message usually doesn't name the DLL directly. To get the name, open Event Viewer (eventvwr.msc) and look under Windows Logs > Application. Find the error event from the application that crashed. The Details tab should list the module name — something like VCRUNTIME140.dll, MSVCP140.dll, or D3DCOMPILER_47.dll.
No luck in Event Viewer? Run the application from a command prompt — Windows often prints the missing DLL name to the console before showing the dialog.
Step 2: Repair or install the correct runtime
If it's a Visual C++ DLL, go straight to Microsoft's official download page for the Visual C++ Redistributable. Don't use third-party "DLL download" sites — they're a security risk and often ship malware. Install the correct architecture: x64 for 64-bit apps, x86 for 32-bit apps. When in doubt, install both.
For DirectX DLLs, run the DirectX End-User Runtime Web Installer from Microsoft. It'll scan your system and add any missing pieces.
For .NET DLLs, check the .NET Framework version. Go to Settings > Apps > Optional Features and make sure the right .NET Framework is enabled. On Windows 10 and 11, .NET Framework 4.8 is usually included but can be turned off.
Step 3: Run System File Checker
If the DLL is a Windows system file (like ntdll.dll or kernel32.dll), run sfc /scannow from an elevated command prompt. SFC compares every protected system file against a cached copy and replaces corrupt ones. Note: SFC can only fix files if the cache itself isn't corrupted. If SFC reports it found corrupt files but couldn't fix some, move to the next step.
sfc /scannow
Step 4: Use DISM to fix the component store
When SFC fails, the underlying component store is damaged. Use DISM (Deployment Imaging Servicing and Management) to repair it:
DISM /Online /Cleanup-Image /RestoreHealth
This command downloads fresh copies of system files from Windows Update. If your internet is down or Windows Update is broken, you can point it to a Windows installation ISO or USB drive:
DISM /Online /Cleanup-Image /RestoreHealth /Source:C:\mount\windows /LimitAccess
After DISM finishes, run sfc /scannow again. The reason this two-step process works is that SFC depends on the component store to know what the correct file should look like. If the store is broken, SFC can't fix anything. DISM fixes the store first, then SFC fixes the files.
Cause 2: The DLL exists but Windows can't find it
This is frustrating. You search the drive, find the DLL sitting in C:\Program Files\SomeApp, and Windows still says it's missing. What's actually happening here is that the application's loader doesn't know to look in that folder. The DLL search order in Windows is: the directory from which the application loaded, the current directory, the system directory (System32 or SysWOW64), the 16-bit system directory, the Windows directory, then every directory in the PATH environment variable.
Step 1: Check the PATH variable
Open a command prompt and type path. Look at the list of directories. If the folder containing the missing DLL isn't listed, that's why the loader can't find it. You can add it temporarily to test:
set PATH=%PATH%;C:\Program Files\SomeApp
Then launch the application from the same command prompt. If it works, you need to make the change permanent. Go to System Properties > Advanced > Environment Variables, edit the Path variable for either the user or the system, and add the application's folder.
Be cautious: adding too many paths to the system-wide PATH can slow down application startup. Only add paths you actually need.
Step 2: Reinstall the application to the default folder
Some poorly written installers put the DLL in a subfolder and don't update the search path. The most reliable fix is to reinstall the application to the default Program Files or Program Files (x86) directory. Uninstall it first, reboot, then install again as administrator. This ensures the installer registers everything correctly in the registry and file system.
Cause 3: Antivirus or third-party software is blocking the DLL
Less common but real. Antivirus software, especially aggressive ones like certain versions of McAfee or Norton, can quarantine a DLL they think is suspicious. Windows then reports it as missing because the file is no longer where the loader expects it.
Step 1: Check the quarantine logs
Open your antivirus console and look for quarantined items. If you find the missing DLL there, restore it. Then add the application's folder to the antivirus exclusion list so it doesn't happen again.
Step 2: Check for sideloading protection
Windows 10 and 11 have a security feature called SmartScreen and Controlled Folder Access (part of Windows Defender Exploit Guard). Controlled Folder Access can block applications from writing DLLs to protected folders, or block DLLs from being loaded. If the error appeared after an update, this might be the culprit.
Open Windows Security > Virus & threat protection > Manage ransomware protection. If Controlled Folder Access is on, click Allow an app through Controlled Folder Access and add the application that's failing. Then try again.
Quick-reference summary table
| Cause | Signs | Fix |
|---|---|---|
| Missing or corrupt runtime DLL | Error after installing/updating an app; DLL name found in Event Viewer | Install/reinstall Visual C++ Redistributable, DirectX, or .NET Framework; then run SFC and DISM |
| DLL exists but path is wrong | DLL file present on disk but error still shows | Add folder to PATH, or reinstall app to default location |
| Antivirus or Windows Defender blocking it | Error appears after security update; DLL in quarantine log | Restore DLL from quarantine; add app to exclusions; disable Controlled Folder Access temporarily |
Most people hit Cause 1 first. Run SFC and DISM, then install the correct redistributable. That combination fixes roughly 80% of these errors. Skip the registry tweaks and third-party DLL cleaners — they're rarely the answer and often cause more problems. Stick with the official Microsoft tools and you'll be fine.
Was this solution helpful?