Fix ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE (0X000036DD) manifest parse error
A quote is missing in a Windows manifest file—typically a side-by-side assembly manifest. Here's how to find and fix the broken XML.
When does this error hit?
You're launching an application—maybe an old CAD tool, a custom in-house app, or a game patcher—and instead of a window, you get a popup saying the app failed to start because its side-by-side configuration is incorrect. Digging into Event Viewer under Windows Logs > Application, you see Event ID 33 with source “SideBySide” and the error code 0X000036DD. The description says something like “Manifest parse error: A single (') or double (") quotation mark is missing.”
I've seen this most often with .exe files that embed a manifest using the RT_MANIFEST resource, or with external .manifest files sitting next to the executable. It almost always happens after a developer edited the manifest in Notepad and accidentally deleted a closing quote, or a build process mangled the XML.
Root cause in plain English
Every Windows module (DLL, EXE) that uses the side-by-side assembly loader has a manifest—an XML file listing dependencies like VC++ runtimes, common controls, or custom assemblies. XML requires matching quotes around attribute values. If a tag like assemblyIdentity name="MyApp" loses that closing inch mark, the parser chokes. The error code 0x000036DD is the SXS loader's way of saying “I hit the end of an attribute value without finding the matching quote.”
This isn't a network issue or a DLL missing—it's literally a typo in XML. The fix is to locate the malformed manifest and repair that quote.
Step-by-step fix
Step 1: Enable the SXS trace log
Windows ships a tool called sxstrace.exe that captures detailed manifest parsing errors. Open a command prompt as Administrator and run:
sxstrace.exe trace -logfile:sxs_trace.etl
Then reproduce the error—launch the crashing app again. After it fails, stop the trace:
sxstrace.exe parse -logfile:sxs_trace.etl -outfile:sxs_trace.txt
Open sxs_trace.txt in Notepad. Look for the line that mentions ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE and the exact filename or path. The log will show which manifest file failed and roughly where.
Step 2: Locate the manifest file
If the app uses an external manifest, it's usually named yourapp.exe.manifest and sits in the same folder as the executable. If it's embedded, you need a resource editor like Resource Hacker (free) to extract it. Open the .exe in Resource Hacker, find the MANIFEST folder under RT_MANIFEST, and extract resource ID 1 (the default).
Step 3: Find the missing quote
Open the manifest in a proper code editor (Notepad++ or VS Code with XML highlighting). Don't use plain Notepad—you'll miss bad formatting. Search for lines that start with an attribute value but don't end with a matching quote. Common culprits:
name="MyApp— missing closing double quoteversion="1.0.0.0— same problemtype="win32— that's a common typo
Also check that attribute values don't have unescaped inner quotes—if you need a quote inside a value, use " or '.
Step 4: Fix the XML
Carefully add the missing quote. If the manifest is external, just save the file. If it's embedded, replace the manifest resource in Resource Hacker (Action > Replace Manifest Resource) and recompile the application—or use mt.exe (the Manifest Tool from the Windows SDK) to update it:
mt.exe -manifest fixed.manifest -outputresource:yourapp.exe;#1
Step 5: Clear the assembly cache
Sometimes Windows caches the broken manifest. Run this to clear the native image cache:
ngen.exe executequeueditems
Then reboot. Not strictly required every time, but I've seen stale cache entries keep the error alive.
If the error still appears
Check these:
- Encoding mismatch—The manifest must be saved as UTF-8 or UTF-16 (with BOM). An ANSI file can mangle XML quotes. In Notepad++, set Encoding to UTF-8-BOM.
- Multiple manifest files—Some apps have both an embedded manifest and an external .manifest. The external one wins, so fix that one.
- Third-party controls—If the app uses a custom common control DLL, that DLL has its own manifest. The error might point to a file like
custom.dll.manifestin the same folder. - Windows Defender or antivirus—Rarely, a real-time scanner can corrupt a manifest file during write. Try a clean copy from a known-good backup.
If none of that works, post the exact line from your sxs_trace.txt in a tech forum—someone will spot the typo in minutes. I've seen this error dozens of times, and it's almost always a missing inch mark on the name attribute. One quote. That's all it takes to halt an entire app.
Was this solution helpful?