Quick answer

QuickBooks error C=343 has two faces. If the dialog says C=343 [file].dll is not an executable file, a damaged or unregistered MSXML component is blocking QuickBooks. If it appears as a company file opens, treat it as a file-access failure: damaged support files, hosting, path, or permissions. Back up the company-file folder, fix the named component first, then clear locks and repair the file.

What QuickBooks error C=343 actually means

Like error C=44, C=343 is a C= code: an internal condition QuickBooks writes to QBWin.log and surfaces when it cannot continue safely. Numbered errors such as the -6000 series point at one stage of the open sequence; a C= code means the engine hit a condition it will not write past.

C=343 appears in two documented contexts, and the dialog wording decides which one you have. During installation or launch, Intuit documents "C=343 Filename.dll is not an executable file," caused by a missing, damaged, or unregistered Microsoft XML Core Services (MSXML) component that QuickBooks uses to read its XML registration file. When C=343 appears while a company file opens, treat it as an access or validation failure — locks, damaged support files, hosting, a bad path, or permissions.

Dialog wordingWhat it points toStart with
C=343 Filename.dll is not an executable fileDamaged or unregistered MSXML on this PCStep 2
C=343 while opening the company fileFile in use, damaged .ND or .TLG, or a path or permission problemStep 3
C=343 on a workstation but not the serverMulti-user hosting or the workstation's connection to the fileStep 5
C=343 after a rebuild or restoreRemaining data damage in the company fileStep 7

Symptoms that come with C=343

  • The error appears either when QuickBooks starts or at the moment the company file is selected, and the operation stops there.
  • When a .dll is named, the problem follows the computer, not the file — other files fail the same way on that PC.
  • QBWin.log records C=343 with a timestamp. Search the drive for QBWin.log and read the newest entry before you make changes.
  • On a network, one workstation reports C=343 while others open the same file normally.
  • QuickBooks may launch fine, then throw the error only when the file is opened from a mapped drive, external drive, or cloud-sync folder.

Common causes, ranked by how often technicians see them

  1. Damaged or unregistered MSXML. When the message names a .dll, the Windows XML component QuickBooks reads during startup is missing, damaged, or not registered. This is the one cause with an official, documented fix.
  2. Damaged .ND, .TLG, or .DSN support files. These describe user access and changes in progress; a stale support file blocks the file from opening even when the .QBW is healthy.
  3. Multi-user hosting on the wrong computer. When more than one PC hosts the file, or the host service is not running, workstations fail with connection and access codes.
  4. File path problems. A mapped drive letter that changed, a disconnected external drive, or a file inside a sync folder gives QuickBooks an address it cannot use reliably.
  5. Folder permissions. The Windows account running QuickBooks needs Modify or Full control on the company-file folder, and the same rights over the share for network access.
  6. A version mismatch. A company file created in a newer QuickBooks year cannot be opened by an older installation.
  7. Genuine data damage inside the .QBW. If a rebuild was interrupted or a drive failed mid-write, the file needs repair, not a settings fix.

Before you begin

You need Windows administrator rights, the QuickBooks admin password, and a working copy of anything you change. If several people use the file, ask them to close QuickBooks first so the rebuild is the only operation touching the data.

Back up the entire company-file folder. Copy the .QBW, the .TLG, the .ND, any .DSN, and the QuickBooksAutoDataRecovery folder to an external drive before you rename, rebuild, or restore anything.

Version note. The hosting toggle lives under File → Utilities in QuickBooks 2024 and later, and in the same menu on older builds. Database Server Manager is a separate Windows program installed with QuickBooks Desktop.

How to fix QuickBooks error C=343

1

Read the exact message and check QBWin.log

Write down the full wording before closing the dialog. If it names a .dll, go to Step 2. If it names the company file or appears during open, go to Step 3. Then open Task Manager with Ctrl + Shift + Esc, end every QBW32.exe, QBDBMgrN.exe, and QBUpdate.exe task, and restart Windows. Search the drive for QBWin.log and note the C=343 line — it often names the file or component involved.

2

Re-register MSXML if a .dll is named

Close QuickBooks. On 64-bit Windows, open the Start menu, type cmd, right-click Command Prompt, and choose Run as administrator. At the prompt, type cd\windows\syswow64, press Enter, then type regsvr32 MSXML6.dll and press Enter. On 32-bit Windows, press Windows + R, type cmd, and run the same regsvr32 MSXML6.dll command. Restart the PC and open QuickBooks again.

These are Intuit's documented commands for repairing Microsoft MSXML. If the error returns immediately, repair or reinstall the Windows component rather than repeating the command.

3

Test a local copy of the company file

Create C:\QBTest and copy the .QBW plus its matching support files into it, keeping the same base name. Open that copy through File → Open or Restore Company. If the local copy opens, the problem is the location — a mapped drive, external disk, or sync folder — not the data. If the copy fails with C=343 too, continue to the support-file and rebuild steps.

4

Rename the .ND, .TLG and .DSN support files

In the folder that holds the company file, find files with the same base name and the extensions .ND, .TLG, and — in older or converted setups — .DSN. Rename each by adding .old, so company.qbw.nd becomes company.qbw.nd.old. QuickBooks recreates these automatically the next time the file opens or Database Server Manager scans the folder, and no transaction data is stored in them.

5

Make sure only one computer hosts multi-user access

On every workstation except your designated server, open QuickBooks, go to File → Utilities, and choose Stop Hosting Multi-User Access if that option is available. On the server, confirm hosting is intentionally on. Press F2 and check the Local Server Information section of the Product Information window to see whether hosting is active on that PC.

If the server is the problem, open QuickBooks Database Server Manager from the Windows Start menu, scan the folder that holds the company file, and confirm the service is running. A host that sleeps or changes IP address keeps producing access errors on workstations.

6

Check the path, permissions, and security software

Prefer a local path or a UNC path (\\Server\Share\CompanyFile.qbw) over a mapped drive letter, which Windows can reassign without warning. Right-click the company-file folder, open Properties → Security, and confirm your Windows account has Modify or Full control; if the folder is shared, check the Sharing tab as well.

Add the company-file and QuickBooks program folders to your antivirus exclusions using the vendor's documented method, and avoid whole-folder encryption tools — both can block the file I/O QuickBooks needs.

7

Run Verify Data, then Rebuild Data

Open the company file (or the local copy), go to Window → Close All, then File → Utilities → Verify Data. If it reports "Your data has lost integrity," continue to File → Utilities → Rebuild Data and save the required backup under a new name. Let it finish even if the window appears frozen — a moving pointer means it is still working. Run Verify afterward; two or three rebuild passes are normal before a file comes back clean.

8

Run QuickBooks File Doctor

Download the current QuickBooks Tool Hub, install it, and open Company File Issues. Run Quick Fix my File, then Run QuickBooks File Doctor, select the company file, choose Check your file, and enter the admin password. The scan can take 10–15 minutes. It sometimes reports "unsuccessful" even after repairing the file, so try opening the company file before concluding it failed.

Verify the fix

  1. Restart the PC, open QuickBooks normally, and launch the company file from its permanent location.
  2. Press F2 and confirm the file, version, and hosting status are correct.
  3. Run File → Utilities → Verify Data and confirm it reports no problems.
  4. On a second workstation, open the same file, post a test transaction, then delete it.
  5. Create a fresh backup and store it off the machine.

If C=343 comes back

If the error returns right after a clean rebuild, work the data-recovery order instead of repeating the same repair. First, use QuickBooks Auto Data Recovery: the .QBW.adr and .TLG.adr files sit in the QuickBooksAutoDataRecovery folder beside your company file, and Intuit documents how to copy them, remove the .adr extension, and verify the result. ADR is not available in Accountant Editions and will not create a file larger than 1.5 GB.

Next, restore the newest backup that opens cleanly through File → Open or Restore Company → Restore a backup copy, into a new folder rather than over the live file. If rebuild fails and no backup opens, the file needs professional company-file repair or Intuit Data Services. Keep the original file and every support file untouched, and review the broader data damage recovery order.

Prevention

  • Keep company files on a local drive or a properly shared server folder, never in a consumer sync folder.
  • Keep Database Server Manager and QuickBooks updates current on the host, and give the host a static IP address with sleep disabled.
  • Run Verify twice a year and before version upgrades, and rebuild the same day if it reports damage.
  • Back up on a schedule, store a copy off the machine, and test a restore at least once a quarter.
  • After any Windows repair or major update, open QuickBooks and confirm the company file still loads.

Frequently asked questions

Is C=343 always an MSXML problem?

No. Intuit documents C=343 as a symptom of damaged or unregistered MSXML when the message names a .dll. When the same code appears while opening a company file, it is an access failure usually caused by locks, support files, hosting, path, or permissions.

Can I fix C=343 without losing my data?

Yes. Re-registering MSXML, renaming support files, fixing hosting, and running Verify and Rebuild do not touch transactions. Only a restore replaces data, which is why you take a folder backup first and restore after the earlier steps fail.

Why does C=343 appear on one workstation only?

That points at the workstation, not the file: an MSXML problem on that PC, stale mapped drives, missing permissions, or hosting accidentally enabled there. Test the local copy from Step 3 and compare the QuickBooks year on both machines.

Does C=343 mean my company file is corrupt?

Not necessarily. If the local copy opens on another PC, the data is fine and the issue is the environment. Verify Data is the fastest way to separate environment trouble from real damage.

How are C= codes different from numbered errors?

Numbered errors such as error 6000 identify a failure in the open or connection sequence and map to documented fixes. C= codes are internal conditions recorded in QBWin.log, and they usually mean QuickBooks stopped rather than risk further writes. Use the error code lookup to compare the exact wording.