QuickBooks Error Code 343
Let’s Dive in to see…
How to Fix QuickBooks
Error C=343
QuickBooks Internal Error · C= Series
How to Fix QuickBooks Error C=343
QuickBooks displays: "An error has occurred in QuickBooks. Please restart QuickBooks to try again. C=343" or "[filename].dll is not an executable file. C=343"
Error C=343 is caused by unregistered or missing Microsoft Core XML Services (MSXML) DLL files. At QuickFix Bookkeeping, the specific fix is registering MSXML3.dll via the Run dialog (32-bit) or Command Prompt (64-bit). This is faster than reinstalling QB and resolves most C=343 cases in under 2 minutes.
The QuickFix Bookkeeping Distinction — The Two Specific Fixes for C=343
C=343 has two distinct causes requiring different fixes. The error message text tells you which one.
Cause A — MSXML3.dll not registered
Message shows generic "C=343" or mentions a .dll file. Fix: 32-bit: Windows + R → type regsvr32 MSXML3.dll → OK. 64-bit: open CMD as admin → cd C:\Windows\SysWOW64 → run regsvr32 MSXML3.dll then regsvr32 MSXML4.dll. Restart QB.
Cause B — QB running in Windows Compatibility Mode
C=343 appears with no dll mention. Fix: right-click QBW32.exe → Properties → Compatibility tab → uncheck "Run this program in compatibility mode for" → OK. Compatibility mode forces QB to run as an older Windows version, causing DLL registration failures.
How to check your Windows version (32-bit or 64-bit): Windows + Pause/Break → System type shows "32-bit operating system" or "64-bit operating system." Use the 32-bit fix on 32-bit Windows; use the 64-bit fix (SysWOW64) on 64-bit Windows. On 64-bit, you need to register both MSXML3.dll and MSXML4.dll from the SysWOW64 folder specifically — the regular System32 folder will not work for QB's 32-bit application files.
What Causes QuickBooks Error C=343?
MSXML3.dll Unregistered or Corrupt
Primary cause — Microsoft Core XML Services DLL files are required for QB to parse XML data in company files and payroll templates. If MSXML3.dll (or MSXML4.dll on 64-bit) is not registered in Windows or is damaged, QB can't use it and reports C=343. Running regsvr32 re-registers the file in the Windows registry.
QB Compatibility Mode Enabled on QBW32.exe
When Windows Compatibility Mode is checked on QBW32.exe (telling Windows to run QB as Windows XP or Vista), QB's DLL loading mechanism behaves differently than on the current Windows version. This mismatch causes C=343 because QB can't load MSXML in the compatibility environment. Unchecking compatibility mode resolves this immediately.
Outdated or Discontinued QB Version
Older QB versions that no longer match the current Windows and DLL environment produce C=343 because QB's internal XML handling code expects older library versions that aren't compatible with updated Windows DLLs. Updating QB to a supported version resolves this variant.
Payroll Template or Company File Trigger
C=343 sometimes appears specifically when accessing payroll in QB or editing payroll templates. The payroll module uses MSXML extensively for form processing. If C=343 only appears in payroll/templates but not on the general QB screen, check and fix the payroll template first (QB → Lists → Templates → find damaged template → delete or restore from backup).
Windows Update Disrupted MSXML
Windows updates can occasionally affect MSXML component registrations — either by updating MSXML files without properly re-registering them, or by changing permissions on the DLL files. QB finds MSXML in an inconsistent state and reports C=343. Running regsvr32 after a Windows update fixes this.
Damaged QB Installation Files
A corrupted QB installation can leave MSXML DLL files missing or in a damaged state. The QB Install Diagnostic Tool scans and repairs MSXML alongside other Windows components needed for QB. This is the right tool when regsvr32 registration succeeds but QB still shows C=343.
How to Fix QuickBooks Error C=343
Try the 2-minute MSXML registration first, then check compatibility mode — these fix most C=343 cases without any reinstall.
Quick Reference
| Situation | Cause | Start with |
|---|---|---|
| C=343 — general QB startup or company file | MSXML3.dll not registered | Method 1 — regsvr32 MSXML3.dll |
| C=343 after Windows or QB upgrade | Compatibility mode or new OS mismatch | Method 2 — uncheck compatibility mode |
| C=343 only in payroll/templates | Damaged payroll template | Check and restore payroll template first |
| regsvr32 errors — DLL files missing | MSXML files not installed | Method 3 — reinstall MSXML.msi |
Frequently Asked Questions
Related QuickBooks Errors
Error C=343 Persisting After MSXML Registration?
Let QuickFix Bookkeeping Restore Your QB.
Persistent C=343 after MSXML registration and compatibility mode fix typically indicates a deeply damaged QB installation or a specific payroll template corruption requiring specialist tools.
Book a Free 30-Minute ConsultationNo obligation. Same-day response.