0X800401F8

Fix CO_E_DLLNOTFOUND 0x800401F8: DLL Class Not Found

CO_E_DLLNOTFOUND means Windows can't load a COM class's DLL. Re-register the component or repair the app. Works for Office, Outlook, and custom apps.

Quick answer

Run regsvr32 /u then regsvr32 on the DLL listed in the error, or repair the Office/application installation. That fixes 90% of cases.

Why this happens

This error pops up when Windows tries to instantiate a COM class (think of it as a blueprint for a software object) but can't find the DLL that contains it. The registry entry points to a file that's either missing, unregistered, or mismatched. I've seen this countless times on small business PCs—often after a Windows update or a sloppy uninstall of another program yanks a shared DLL. Last month, a client's accounting software started throwing 0x800401F8 every time they tried to export to PDF. Turned out an Office update had overwritten a shared COM component, leaving the registry pointing to an old version.

How to fix it

  1. Identify the exact DLL – Check the full error message or the event log (Event Viewer > Windows Logs > Application). It usually names the missing DLL like mso.dll or stdole32.tlb. If it doesn't, skip to step 3.
  2. Re-register the DLL – Open Command Prompt as Administrator. Navigate to the folder containing the DLL or use the full path. Run these commands:
    cd /d C:\Windows\System32
    regsvr32 /u mso.dll
    regsvr32 mso.dll
    Replace mso.dll with your actual DLL name. If you get an error saying the module was found but the entry point wasn't, that means the DLL is the wrong bitness (32-bit vs 64-bit). Try the same from C:\Windows\SysWOW64 instead.
  3. Repair the application – If re-registering doesn't work, repair the program that's crashing. For Office: Control Panel > Programs > Microsoft Office > Change > Quick Repair. For other apps, look for a repair option in the installer. A quick repair takes five minutes and restores all missing COM components.
  4. Reinstall the application – If repair fails, uninstall and reinstall. This is the nuclear option but it works when the registry is severely mangled. Back up your data first—I've had clients lose their QuickBooks files because they skipped that.
  5. Check for stale registry entries – Use regedit to search for the DLL name under HKEY_CLASSES_ROOT\CLSID. If you find references, note the GUID. Then look for that GUID under HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID and see if the InprocServer32 path points to a file that exists. If not, you can delete the broken key—but only if you're comfortable. Otherwise, run a registry cleaner like CCleaner (yes, it's okay in this specific case) to remove orphaned entries.

Alternative fixes if the main ones fail

If you're still stuck, try these less common but effective approaches:

  • Run System File Checker – Corrupted system files can break COM registration. Open CMD as Admin and run sfc /scannow. It takes 10-20 minutes but catches missing system DLLs.
  • Use Microsoft's Program Install and Uninstall Troubleshooter – This free tool fixes broken installations that block re-registration. Grab it from Microsoft's support site.
  • Set the DLL's registry permission – Sometimes antivirus locks the registry key. Right-click the key in regedit, go to Permissions, and give SYSTEM and Administrators full control. But be careful—don't change permissions on anything you don't understand.

Prevention tip

The simplest way to avoid this is to not let third-party uninstallers go wild. When you remove software, use the official uninstaller. And if you're an IT admin, always create a system restore point before installing updates or large apps. I've saved my bacon more than once rolling back a bad patch that nuked a COM component. Also, keep Office and other apps up to date—Microsoft patches these registry issues in cumulative updates.

Related Errors in Windows Errors
0XC00D2791 NS_E_DRM_MIGRATION_INVALID_LEGACYV2_DATA Fix (0XC00D2791) 0X00001B60 ERROR_CTX_NO_OUTBUF (0X00001B60) – No Free Output Buffers 0X0000025F Fix ERROR_TIMER_RESOLUTION_NOT_SET 0X0000025F 0X80280003 Fix TPM_E_BAD_PARAMETER 0x80280003 in Windows 10/11

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.