FSX & FSX: Steam Edition 9 min read 179 views

How do I restore or rebuild a missing DLL.xml in FSX?

Adam McEnroe
In short

Restore or rebuild a missing DLL.xml in FSX and Steam Edition, locate the right AppData folder, fix malformed XML and recover add-on entries.

In FSX and FSX: Steam Edition, restore dll.xml from a known-good backup or create a valid empty file in the active roaming AppData configuration folder. An empty file fixes the missing or malformed container only; repair affected module add-ons afterwards because FSX cannot recreate their Launch.Addon entries automatically.

Which AppData folder does FSX: Steam Edition use?

dll.xml belongs in the active Windows user's AppData\Roaming configuration folder, not the Steam library, main FSX installation directory, Program Files or ProgramData. Press Windows key+R, enter %APPDATA%\Microsoft and inspect the FSX folders there.

InstallationLikely locationWhat decides it
Boxed FSX%APPDATA%\Microsoft\FSX\dll.xmlBoxed FSX normally uses the FSX folder.
Steam Edition only%APPDATA%\Microsoft\FSX\dll.xmlA Steam-only installation commonly uses FSX, despite being installed through Steam.
Boxed and Steam side by side%APPDATA%\Microsoft\FSX-SE\dll.xmlSteam Edition commonly switches to FSX-SE when both editions are present.

Do not choose a folder from its name alone. Make a harmless change in FSX's settings, exit the simulator normally and check which folder's FSX.cfg modification time changed. The active dll.xml belongs beside that FSX.cfg.

AppData is specific to each Windows account. A file created while signed into another account, or by an installer run using different account credentials, will not affect the profile from which you run FSX.

How do I restore or rebuild DLL.xml safely?

The safest order is to identify the active folder, preserve everything already there and restore a backup before creating an empty replacement.

  1. Close FSX and its add-on utilities. Check that the simulator has fully exited before editing configuration files.
  2. Back up the active configuration folder. Copy the complete FSX or FSX-SE folder somewhere outside AppData. This preserves FSX.cfg, exe.xml and any damaged file you may later need to inspect.
  3. Show filename extensions. Enable File Explorer's option to display extensions. Otherwise, a file shown as dll.xml may really be dll.xml.txt.
  4. Search for a usable backup. Look for files such as dll.xml.bak, dll.xml.old or dated copies made by add-on installers. A valid candidate should have one XML declaration, one opening SimBase.Document element and its matching closing element.
  5. Restore the best copy. Rename the damaged file to dll.xml.bad, copy the backup into the active folder and name the copy exactly dll.xml. Keep the original backup untouched.
  6. Create an empty file when no backup exists. Open a plain-text editor and enter: <?xml version="1.0" encoding="Windows-1252"?> <SimBase.Document Type="Launch" version="1,0"><Descr>Launch</Descr><Filename>dll.xml</Filename><Disabled>False</Disabled><Launch.ManualLoad>False</Launch.ManualLoad></SimBase.Document>
  7. Save it as plain text. Use the editor's all-files option rather than saving a text document. Keep the declared encoding and actual encoding consistent: use Windows-1252 or ANSI with the template above, or change the declaration to UTF-8 if the editor saves in UTF-8.
  8. Start FSX before adding modules. A valid empty file should load without a malformed XML warning. Module-dependent add-ons and their Add-ons menu commands will still be absent at this stage.

Do not copy a populated dll.xml from another computer. Its paths, installed modules and enabled states may not match your system, and an unknown startup DLL should never be trusted merely to make an error disappear.

How do I recover the missing Launch.Addon entries?

An empty dll.xml restores the document structure but contains no instructions to load third-party modules. Repair or reinstall the affected add-ons individually, making sure each installer targets the correct FSX edition and Windows account.

Each module normally has a complete Launch.Addon block containing its name, disabled state, manual-load state and DLL path. Recovered blocks must sit inside SimBase.Document, before its closing tag. XML element names are case-sensitive, and some add-ons require extra elements, so use the block supplied by the add-on or recovered from your own backup rather than inventing one.

For an automatically loaded module, its block will normally have Disabled and ManualLoad set to False. Confirm that its Path points to an existing file, especially if FSX or the add-on was moved to another drive. If an installer does not recreate the registration, follow our checks for correcting an FSX add-on installation and its target edition.

Restore one module at a time and start FSX after each change. If startup fails after adding a block, set that block's Disabled value to True rather than deleting it. This distinguishes a bad module from malformed XML.

FSX is a 32-bit programme, so the referenced binary must be an FSX-compatible 32-bit module. Separate programmes that run as executable files normally belong in exe.xml, not dll.xml; aircraft gauge DLLs may instead be loaded through an aircraft's panel configuration.

FSX may ask whether to run a newly registered module and whether it should be treated as trusted. Approve only a DLL you deliberately installed and recognise. Refusing the prompt can leave a correct Launch.Addon entry present but unloaded.

Why does DLL.xml look different (“wygląda inaczej”) or not load (“wird nicht geladen”)?

Different indentation or line breaks do not make an XML file invalid, but editing the wrong folder, using the wrong extension or breaking an element will stop FSX from using it.

SymptomLikely causeAction
The file looks different from an exampleThe editor changed indentation, spacing or line wrappingCheck the XML structure and encoding; appearance alone is not a fault.
Creating the file changes nothingWrong AppData folder or Windows profileFind the folder whose FSX.cfg changes when FSX settings are saved.
FSX ignores the fileIt is really dll.xml.txtShow extensions and remove the final .txt.
The add-on will not loadMissing or disabled entry, manual loading enabled, obsolete path or rejected trust promptInspect that add-on's complete block and confirm its DLL exists.
FSX crashes after one entry is restoredThe referenced module is damaged, incompatible or missing a required componentDisable that block and repair the add-on rather than rebuilding the whole file again.

What does “malformed EXE/DLL detected” mean?

The filename named in the warning determines which configuration file or module needs attention; dll.xml and exe.xml are separate files.

  • “Malformed DLL.XML file detected” means FSX cannot parse the XML structure. Common causes are a missing closing tag, two XML declarations, a block pasted after the closing SimBase.Document tag, typographic quotation marks or an unescaped ampersand. An ampersand inside XML text must be written as &amp;.
  • “Malformed EXE.XML file detected” points to exe.xml in the same active configuration folder. Rebuilding dll.xml will not correct that separate file.
  • A warning naming a third-party DLL may mean the XML was read successfully but the binary could not load. Disable its block, verify the path and repair the matching add-on. Do not place an .exe file in a DLL entry.

When FSX gives a line and character number, inspect that position and the line immediately before it. The parser often notices the problem only when it reaches the next tag, so the reported line is not always where the mistake began.

I cannot see the menu (“no veo el menú”): is DLL.xml responsible?

A missing Add-ons menu can result from an empty, disabled or incorrect dll.xml, but only if an installed module is supposed to create that menu.

Not every add-on adds a menu command. If a known module used to provide one, confirm its Launch.Addon block, DLL path, trust response and compatibility; our diagnosis for an Add-ons menu missing in FSX: Steam Edition covers those module-specific checks.

If the entire top menu bar is absent rather than just the Add-ons item, dll.xml is not the usual cause. Full-screen and menu-display behaviour should instead be checked using the steps for restoring FSX's main menu bar.

Why does the same error remain (“та же ошибка” or “ошибка осталась”)?

If exactly the same error remains after installing a minimal valid file, either FSX is reading a different configuration folder or the error is not caused by dll.xml.

Test resultWhat it meansNext step
The error disappears with the empty fileOne of the old entries or its XML syntax was faultyAdd complete blocks back one at a time until the failure returns.
The error remains after dll.xml is temporarily renamedThe active file is elsewhere, an add-on recreated it, or another file causes the messageRecheck the active FSX.cfg folder and read the exact filename in the warning.
The XML warning remains with the minimal templateThe filename, extension, encoding or save location is wrongRecreate the file as plain text and verify that it is not dll.xml.txt.
FSX starts but the add-on remains missingThe container is valid but its registration is absent or the DLL cannot loadRepair that add-on and check its entry, path and trust state.

If the message specifically names MSXML rather than dll.xml, rebuilding add-on registrations is the wrong repair. Use our checks for distinguishing an MSXML 4.0 fault from damaged FSX XML files.

Will Steam verification recreate DLL.xml?

Steam file verification does not normally rebuild a user's populated dll.xml or restore third-party Launch.Addon entries. The file is stored under the Windows profile and records add-ons that are not part of the stock FSX installation. A boxed-FSX repair has the same limitation.

Does FSX need DLL.xml when no module add-ons are installed?

FSX can run without a populated dll.xml. If the simulator starts normally and every required add-on works, the missing file may require no action; it becomes necessary only when an installed DLL module needs a startup registration.

AI Assistant New

Still stuck? Ask Fly Away

Ask Fly Away is our AI flight-sim assistant. Ask your exact question and get a direct, step-by-step answer in seconds — free to try.

Ask Fly Away Free preview · unlimited for PRO members