Inicio / Guías / Errores de programas y archivos

Falta D3DX9_43.dll - cómo arreglarlo de forma segura

D3DX9_43.dll es una librería auxiliar de DirectX 9 - la capa gráfica sobre la que se construyó la mayoría de los juegos de los 2000 y principios de los 2010. Windows 10 y 11 vienen con DirectX 12 pero dejan fuera los archivos opcionales de la era DirectX 9, así que un juego antiguo en un PC moderno pide un archivo que el sistema nunca tuvo. Microsoft sigue distribuyendo esos archivos en el DirectX End-User Runtime gratuito; una sola ejecución del instalador arregla este error - y sus hermanos como d3dx9_42 o d3dx9_39 - para siempre.

Pregúntale a Chipps

Escribe lo que pasa con tus palabras, por ejemplo: "El programa no abre, dice que falta el archivo D3DX9_43.dll". Chipps revisa el equipo, muestra lo que ha encontrado y propone la solución. Nada cambia hasta que pulsas Allow.

Descargar Chipps Descarga el instalador de Chipps para Windows.

Respuesta rápida

Descarga el DirectX End-User Runtime Web Installer desde el sitio oficial de Microsoft y ejecútalo. Añade las librerías antiguas de DirectX 9 - todos los archivos d3dx9 entre ellas - junto al DirectX que tu Windows ya tiene. Luego arranca el juego de nuevo.

Síntomas - cómo se manifiesta el problema

"El programa no puede iniciarse porque falta D3DX9_43.dll en el equipo"
Un juego antiguo falla al arrancar en un PC nuevo o recién reinstalado
Aparece un número vecino en su lugar: d3dx9_42.dll, d3dx9_39.dll, d3dx9_31.dll
El juego funcionaba en el PC antiguo y falla en el nuevo
Otro arranque se queja de XINPUT1_3.dll - la misma familia
Reinstalar el juego no devolvió el archivo

Por qué ocurre

Falta el runtime antiguo de DirectX

Windows 10/11 incluyen solo el DirectX moderno. Las librerías auxiliares d3dx9 siempre fueron extras opcionales - los juegos las instalaban en silencio en su día, los sistemas modernos arrancan sin ellas.

Windows nuevo, juego viejo

Tras una reinstalación o en un PC nuevo, el primer juego de la era de los 2000 que instalas suele ser el que destapa este error - nada ha instalado todavía el runtime antiguo.

Se saltó el paso de DirectX del propio juego

Muchos instaladores clásicos ofrecían un paso de DirectX incluido que la gente cancela - el juego queda en el disco sin su runtime.

Una DLL suelta copiada de un sitio

Hay más de treinta archivos d3dx9 en el runtime. Soltar una DLL descargada en la carpeta del juego lleva a que el siguiente número se queje - y los sitios de DLL conllevan un riesgo real de malware.

Las soluciones, en orden

1. Instala el DirectX End-User Runtime

  1. En el sitio oficial de Microsoft, busca "DirectX End-User Runtime Web Installer".
  2. Descarga y ejecuta dxwebsetup.exe; rechaza los extras opcionales que ofrezca.
  3. Deja que termine - instala toda la familia d3dx9 de una vez, no solo un archivo.
  4. Reinicia el PC y arranca el juego.

Ve sobre seguro: solo el sitio de Microsoft. El End-User Runtime es la fuente legítima de todas las DLL d3dx9 - los sitios de descargas ofrecen los mismos archivos sin ninguna garantía y con casos de malware conocidos.

2. Ejecuta el instalador de DirectX que vino con el juego

  1. Abre la carpeta del juego (Steam: clic derecho, Administrar, Ver archivos locales).
  2. Busca una subcarpeta _CommonRedist, DirectX o Redist.
  3. Ejecuta el DXSETUP.exe que hay dentro - instala exactamente la versión de DirectX con la que se probó el juego.

3. Verifica los archivos del juego

  1. Steam: clic derecho en el juego, Propiedades, Archivos instalados, Verificar la integridad de los archivos del juego.
  2. Otros launchers tienen la misma opción de reparación en los ajustes del juego.
  3. Después instala el runtime del método 1 si el error persiste.

4. Repara los archivos del sistema si el instalador falla

  1. Haz clic derecho en Inicio y abre Terminal (administrador).
  2. Ejecuta sfc /scannow y después DISM /Online /Cleanup-Image /RestoreHealth.
  3. Reinicia y ejecuta el instalador de DirectX otra vez.

Preguntas frecuentes

Mi PC tiene DirectX 12. ¿Por qué un juego pide archivos de DirectX 9?

Las versiones de DirectX no se sustituyen hacia atrás - un juego construido sobre DirectX 9 carga las librerías d3dx9 por su nombre, y DirectX 12 no las contiene. El End-User Runtime instala los archivos antiguos al lado, que es exactamente como Microsoft lo tiene previsto.

Después de arreglar d3dx9_43, el juego pide XINPUT1_3.dll. ¿Y ahora qué?

Los dos vienen en el mismo DirectX End-User Runtime - si instalaste el runtime completo, ese error también está cubierto. Si aun así aparece, ejecuta dxwebsetup.exe de nuevo y deja que termine del todo; nuestra guía de XINPUT1_3.dll tiene los detalles.

¿Puedo copiar solo D3DX9_43.dll en la carpeta del juego?

Suele acabar en cadena: el siguiente arranque pide d3dx9_42, luego otro número. El runtime es un conjunto de decenas de archivos emparejados, y el instalador oficial los pone todos donde cualquier juego los encuentra - una ejecución y se acabó la cadena.

O deja que Chipps lo revise

Escribe lo que pasa con tus palabras. Chipps lee los registros de Windows, señala la causa probable y propone la solución más acotada. Nada cambia sin tu Allow, y al final te muestra qué hizo y qué no hizo.

Descargar Chipps Descarga el instalador de Chipps para Windows.
Con tus palabrassin términos técnicos
Tu visto buenoantes de cualquier cambio
Informe clarode lo que se hizo