STATUS_SXS_CORRUPT_ACTIVATION_STACK (0XC0150014) Fix
App crashes on startup with side-by-side assembly error. The activation stack is corrupted, usually by a bad update or DLL conflict.
You're launching an app—maybe an older game, a CAD tool, or something that depends on Visual C++ runtimes. It crashes immediately with the error STATUS_SXS_CORRUPT_ACTIVATION_STACK (0xC0150014). This isn't a normal "missing DLL" problem. What's actually happening is the Windows Side-by-Side (SxS) activation stack got corrupted in memory or on disk. This often happens after a Windows update that partially replaced a manifest or assembly, or when two different installers overwrite each other's side-by-side configuration. The activation context—the set of rules that tells Windows which version of a DLL to use—can't build properly, so the thread dies.
Root Cause
Every program that uses side-by-side assemblies carries a manifest that lists its dependencies (DLLs, COM objects, etc.). Windows caches this activation stack per thread. When the stack is corrupt, it means either the manifest file itself is malformed, the assembly store (C:\Windows\WinSxS) has a broken entry, or the runtime linker loaded a mismatched version. The error code 0xC0150014 specifically means the stack for the running thread went bad—so it's thread-local, not global. But fixing it globally (repairing the store) usually resolves it because the root cause is systemic.
The Fix (Step-by-Step)
Step 1: Check Event Viewer for Clues
Open Event Viewer (eventvwr.msc), go to Windows Logs > Application. Look for SideBySide errors around the time of the crash. They often list a specific DLL or manifest that failed. Write down the assembly name or version. This tells you which component to target.
Step 2: Run DISM to Fix the Component Store
Open Command Prompt as Administrator. Run:
DISM /Online /Cleanup-Image /RestoreHealth
This scans the SxS store for corruption and replaces bad manifests from Windows Update. Let it finish—it can take 15-30 minutes. If it hangs, run DISM /Online /Cleanup-Image /ScanHealth first to check integrity without repairing. The reason step 3 works is that DISM rebuilds the assembly store from a known-good source, fixing the activation stack for all threads.
Step 3: Run System File Checker
After DISM, run:
sfc /scannow
This repairs system files that might have been overwritten. If SFC finds corruption but can't fix it ("Windows Resource Protection could not perform the requested operation"), run DISM again with the /RestoreHealth flag—SFC depends on a healthy SxS store.
Step 4: Reinstall Visual C++ Redistributables
Go to Microsoft's website and download the latest Visual C++ Redistributable package (both x86 and x64 if you're on 64-bit Windows). Uninstall all existing Visual C++ redistributables from Programs and Features, then install the fresh copies. The error often traces back to a corrupted CRT or MFC DLL in the side-by-side store. Reinstalling replaces those assemblies cleanly.
Step 5: Uninstall the Problematic Windows Update
If the error started after a specific update, remove it. Go to Settings > Update & Security > Windows Update > View update history > Uninstall updates. Look for recent updates dated around when the error began. Right-click and uninstall. A common trigger is cumulative update KB5006670 (Windows 10 21H2) which had side-by-side manifest bugs. Reboot and test.
Step 6: Do a Clean Boot to Rule Out Software Conflict
Run msconfig, go to Services tab, check "Hide all Microsoft services", then click "Disable all". Go to Startup tab, open Task Manager, and disable all startup items. Reboot. If the error disappears, something you disabled is the cause. Re-enable services one by one until it breaks again.
Still Failing?
If none of that works, the issue might be specific to one app's manifest. Locate the .exe's manifest file (often embedded or in a .manifest file alongside it). Open it in Notepad—look for malformed XML, mismatched assembly versions, or missing attributes. Compare it to a working copy from another machine. Also check Processor Affinity: some apps that trigger this error have CPU affinity issues (try setting affinity to a single core in Task Manager). If you're really stuck, use Process Monitor to trace the activation stack failure—filter on the process name and look for "Name Not Found" or "Path Not Found" errors just before the crash. That pinpoints the exact missing assembly.
Was this solution helpful?