0X800401FA

CO_E_WRONGOSFORAPP (0X800401FA) — OS mismatch explained

Your app thinks Windows is the wrong version. Usually a manifest issue or broken compatibility shim. Fix it by forcing the correct OS version in the manifest.

1. The app manifest says it needs a different Windows version (most common)

What's actually happening here is that Windows is looking at the application's embedded manifest and finding that the <supportedOS> GUID doesn't match the current OS version. The COM runtime then raises CO_E_WRONGOSFORAPP (0x800401FA) to block the launch. This usually happens when a developer compiled the app targeting Windows 7 or 8, but didn't include the GUID for Windows 10 or 11.

The real fix is to either update the manifest yourself (if you control the source) or use a compatibility override. Since most people don't own the source, here's the practical fix:

  1. Right-click the app's .exe file and choose Properties.
  2. Go to the Compatibility tab.
  3. Check Run this program in compatibility mode for and select the OS the app was designed for (usually Windows 7 or Windows 8).
  4. Click Apply, then OK.
  5. Run the app again.

Why does this work? The compatibility shim lies to the COM runtime about the OS version. It's a cheat, but it's the sanctioned one. If you're still seeing the error, the app might have an embedded manifest that's resistant — that's when you need the next fix.

2. Corrupt or missing side-by-side assembly (second most common)

Sometimes the error isn't about the OS version at all, but about a missing VC++ redistributable. The COM runtime misreports the error code when it can't find a required assembly. I've seen this with old AutoDesk and Siemens apps that expect Visual C++ 2005 or 2008 runtimes.

To check: open Event Viewer > Windows Logs > Application. Look for a warning from SideBySide with event ID 33 or 59. If you see something like "Manifest parsing error" or "Assembly reference not found", you've found the real issue.

Fix it by reinstalling the missing runtime:

  1. Go to Microsoft's download center and grab the VC++ redistributable for the version the app needs (2005, 2008, 2010). Get both x86 and x64 if you're on 64-bit Windows.
  2. Run the installer as administrator.
  3. Reboot. Then try launching the app again.

Skip the compatibility fix above if this event log entry is present — it won't work because the manifest itself is fine, the assembly file is literally missing from disk.

3. COM object registered with wrong AppID — DCOM config mismatch

If the app is a COM server or uses DCOM, the error can come from the AppID registry entry pointing to the wrong executable version. This is rare outside enterprise software (think SAP or custom internal tools), but it happens.

Here's how to check: open Component Services (dcomcnfg.exe) > Component Services > Computers > My Computer > DCOM Config. Find your application's entry, right-click > Properties > General tab. Look at Application Path. If it points to a 32-bit executable when the system is 64-bit, or to the wrong version number, that's your culprit.

To fix it:

  1. Open Regedit as administrator.
  2. Navigate to HKCR\AppID\{your-app-guid}.
  3. Find the AccessPermission or LaunchPermission value — delete them if they reference a specific user account that no longer exists.
  4. Better yet, right-click the key and export it as a backup first. Then delete the entire key. Reinstall the app to recreate it fresh.

Skip this fix if you're not running enterprise software or custom COM servers. For regular desktop apps, the first two causes are far more likely.

Quick-reference summary

CauseWhere to checkThe fixSuccess rate
Wrong OS GUID in manifestEvent Viewer -> Application (no SideBySide errors)Compatibility tab -> run for older Windows80%
Missing VC++ runtimeEvent Viewer -> SideBySide event 33/59Reinstall VC++ redist (server version)95%
Corrupt DCOM AppIDComponent Services -> DCOM ConfigExport/delete AppID key, reinstall50% (depends on app)
One last thing: If none of these work, the app might genuinely require an OS version you don't have — like an old Windows 98-only app on Windows 11. In that case, a virtual machine running the right OS is your only path. Don't waste time trying to hack the kernel.
Related Errors in Windows Errors
0XC0220018 0XC0220018: Too Many Boot-Time Filters Reached 0X00000490 Fix ERROR_NOT_FOUND (0x00000490) on Windows 0X80080011 Fix MEM_E_INVALID_SIZE (0X80080011) allocation size error 0XC0262511 Fix ERROR_GRAPHICS_PVP_HFS_FAILED (0xC0262511) on Windows

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.