d3dx9_43.dll is missing — what it means and how to fix it

d3dx9_43.dll is a helper library from the DirectX 9 era. Windows 10 and 11 ship a newer DirectX, but not these older optional files — so games from that period (and some much newer ones built on older engines) stop at launch with this message. The files are legitimately absent, and Microsoft still provides them.

The fix, in order

  1. Install the DirectX End-User Runtime from Microsoft (the web installer, dxwebsetup.exe). It adds the missing DirectX 9/10/11 helper files — d3dx9_43.dll among them — without touching your current DirectX.
  2. Restart the game (and the PC if the installer asks).
  3. Check the game’s own redist folder: many games ship the same installer under a “_Redist” or “DirectX” folder in their install directory — running that copy is equally valid.
  4. Verify the game’s files (Steam: Properties → Installed Files → Verify integrity) if the error changes to a different missing DLL afterwards — you may simply be walking down a list of missing pieces the runtime install then completes.
Do not download d3dx9_43.dll from a DLL site. Single files arrive in random versions, sometimes with bundled installers. The End-User Runtime installs the whole matched set the game expects, free, from Microsoft.

If it still happens

If the game now complains about a different DLL (xinput1_3.dll is the usual next one), it’s the same story — the End-User Runtime covers those too; if you already ran it, run it once more after the game’s own redist, then verify files.

Common questions

I have DirectX 12. How can a DirectX file be missing? DirectX versions coexist, but the optional helper libraries from the DirectX 9 era aren’t part of the built-in set. The End-User Runtime adds exactly those leftovers.

Will installing the old runtime downgrade my DirectX? No. It only adds files; nothing newer is replaced.

Related errors

xinput1_3.dll missing · Error 0xc000007b — unable to start correctly · MSVCP140.dll missing