Cuando un programa deja de abrirse y Windows muestra "La aplicación no se pudo iniciar correctamente (0xc000007b)" —o su equivalente en inglés con {Bad Image}—, casi siempre se debe a que ese programa carga un archivo DLL de la arquitectura equivocada (uno de 32 bits en un programa de 64 o al revés) o a un archivo DLL dañado. Lo más probable es que falten o estén rotos los paquetes Microsoft Visual C++ Redistributable, así que lo primero que conviene probar es reinstalarlos desde la web oficial de Microsoft. También es habitual en juegos que dependen de DirectX o de una versión concreta de .NET. Este artículo aplica a Windows 11 y a Windows 10.
Qué significa 0xc000007b en una aplicación de Windows
El código 0xc000007b en Windows corresponde al estado NTSTATUS STATUS_INVALID_IMAGE_FORMAT: significa que el formato de la imagen (el archivo DLL o EXE) que el programa intenta cargar no es válido para el sistema. En la práctica, el ejecutable (.exe) carga una DLL de la otra arquitectura (32 bits frente a 64) o una DLL dañada, y el cargador de imágenes de Windows rechaza arrancarlo. Lo verás casi siempre con uno de estos dos mensajes.
El segundo aparece cuando el problema está en una DLL concreta y no en el propio ejecutable: el nombre que sale en %hs (por ejemplo MSVCP140.dll) es la pista que indica qué componente falta.
Por qué Windows lanza 0xc000007b al abrir un programa
Cinco causas cubren la mayoría de los casos. Cada fila apunta a la parte de esta guía donde se arregla.
| Lo que ve el lector | Causa probable | Dónde se arregla |
|---|---|---|
| Faltan paquetes Visual C++ x86 y x64 de 2015-2022 o están rotos | El programa carga una DLL de Visual C++ dañada o de la otra arquitectura | Faltan los Visual C++ Redistributable: reinstálalos |
| Solo falla en juegos (Elden Ring, Naruto Storm 4 y otros DX9/DX11) | Las DLL de DirectX están dañadas o falta una versión concreta | El 0xc000007b es en un juego: repara DirectX y .NET |
El mensaje {Bad Image} nombra una DLL de .NET |
.NET Framework es viejo o no es el que pide el programa | El 0xc000007b es en un juego: repara DirectX y .NET |
El usuario copió una DLL "suelta" en System32 o en la carpeta del programa |
DLL de la arquitectura equivocada o de una web no fiable | El programa carga una DLL de la otra arquitectura: borra la DLL copiada a mano |
| Reinstalar el programa, los Visual C++ y reparar Windows no lo arregla | Archivos de sistema de Windows dañados | 0xc000007b sigue saliendo: repara los archivos de Windows |
Confirma la causa de 0xc000007b antes de tocar nada
Antes de reinstalar nada, vale la pena ver en tu PC cuál de las causas encaja. Cada comprobación toma menos de un minuto y la salida te lleva directo a la parte de esta guía que te corresponde.
La arquitectura del programa y de Windows
Sirve para saber si el programa es de 32 o de 64 bits y compararlo con tu Windows.
- Haz clic derecho sobre el acceso directo del programa que falla y elige Propiedades.
- Abre la pestaña Acceso directo y pulsa Abrir la ubicación del archivo.
- En la carpeta, haz clic derecho sobre el
.exe, elige Propiedades y entra en la pestaña Detalles. - Mira el campo Tipo de archivo / Descripción del archivo: si pone "Aplicación (64 bits)" es de 64; si pone "Aplicación (32 bits)" es de 32.
- Ahora comprueba tu Windows: pulsa Win+R, escribe
msinfo32y pulsa Aceptar. En el campo Tipo de sistema debe poner x64 (64 bits) o x86 (32 bits).
Los Visual C++ Redistributable que tienes instalados
Sirve para ver qué paquetes faltan.
Busca entradas tipo "Microsoft Visual C++ 2015-2022 Redistributable (x86)" y "(x64)". Si el programa es antiguo, mira también 2013 (x86 y x64). Apunta los que faltan.
El Visor de eventos y el error de la aplicación
Sirve para sacar el nombre exacto de la DLL que falla cuando Windows no lo muestra.
Abre eventvwr.msc y, en Registros de Windows > Aplicación, busca entradas con origen Application Error. En la pestaña General mira el dato Código de excepción: si es 0xc000007b, más abajo aparece la DLL o el módulo culpable.
0xc000007b y la DLL es de Visual C++ (MSVC*.dll, VCRUNTIME*.dll), ve a "Faltan los Visual C++ Redistributable". Si la DLL es de DirectX o .NET, ve a la parte de juegos.Faltan los Visual C++ Redistributable: reinstálalos
Esta es la causa más común. Si reinstalas los paquetes x86 y x64 de 2015-2022 desde la página oficial de Microsoft, el 90% de los casos queda resuelto sin tocar nada más.
Descarga los paquetes x64 y x86 de Visual C++ 2015-2022
- Entra en la página oficial de Microsoft Visual C++ Redistributable (última versión compatible) en
learn.microsoft.com. - Descarga
vc_redist.x64.exeyvc_redist.x86.exe. - Haz clic derecho sobre cada uno y elige Ejecutar como administrador.
- Acepta los términos, pulsa Instalar y al terminar Reiniciar cuando el instalador lo ofrezca.
- Abre de nuevo el programa que fallaba.
learn.microsoft.com o microsoft.com. Las webs que regalan DLL sueltas no son fiables y empeoran el problema.Si el programa es antiguo, añade 2013 y 2010
- Descarga los redistribuibles de Visual C++ 2013 (x86 y x64) y, si el programa es de antes de 2013, también los de 2010, desde la página de descargas de Microsoft.
- Instálalos uno por uno como administrador.
- Reinicia el equipo y vuelve a abrir el programa.
El 0xc000007b es en un juego: repara DirectX y .NET
Si el error aparece solo al abrir un juego (Elden Ring, Naruto Storm 4 y otros títulos que usan DirectX 9/11), el problema suelen ser las DLL de DirectX o una versión de .NET Framework que el juego necesita.
Instala el DirectX End-User Runtime de Microsoft
- Entra en la página de descarga del DirectX End-User Runtime en
microsoft.com. - Ejecuta
dxsetup.exey sigue los pasos hasta el final. - Reinicia el equipo y abre el juego de nuevo.
Actualiza .NET Framework desde la web de Microsoft
- Entra en
dotnet.microsoft.comy descarga la versión de .NET o .NET Framework más reciente compatible con tu Windows. - Si el juego o el programa pide una versión concreta, instala esa.
- Reinicia y vuelve a abrirlo.
{Bad Image} nombraba una DLL de .NET, debería desaparecer tras la actualización.El programa carga una DLL de la otra arquitectura: borra la DLL copiada a mano
Si en algún momento copiaste una DLL "suelta" (descargada de una web de DLL o sacada de otro PC) en System32 o en la propia carpeta del programa, esa DLL es la candidata. Sustitúyela por la original y vuelve a instalar el programa.
Revisa la carpeta del programa y System32
- Abre la carpeta del programa (la que localizaste en el diagnóstico).
- Ordénala por Fecha de modificación y busca DLL nuevas o que no reconozcas:
MSVCP140.dll,VCRUNTIME140.dll,XINPUT1_3.dlly similares son las habituales. - Entra en
C:\Windows\System32(DLL de 64 bits) yC:\Windows\SysWOW64(DLL de 32 bits): comprueba que no haya DLL copiadas a mano en la carpeta equivocada. - Si encontraste una DLL sospechosa, bórrala y, si la necesitas, cópiala de la carpeta correcta a la carpeta del programa, nunca a
System32.
Reinstala el programa desde su instalador oficial
- Abre Panel de control > Programas > Desinstalar un programa, busca el programa que falla y elige Desinstalar.
- Ve a su carpeta en
Archivos de programa(oArchivos de programa (x86)) y bórrala si queda algo. - Vuelve a descargarlo desde la web oficial del fabricante o desde Microsoft Store, ejecútalo como administrador y reinicia al terminar.
0xc000007b sigue saliendo: repara los archivos de Windows
Si nada de lo anterior lo arregla, el problema puede estar en los propios archivos de Windows. Antes de tocar nada del sistema, crea un punto de restauración por si algo va mal.
SFC y DISM desde la Terminal como administrador
Abre Terminal (Administrador) desde Win+X (Windows 11) o Windows PowerShell (Administrador) desde el menú de inicio (Windows 10). Ejecuta los comandos en este orden:
sfc /scannow
Protección de recursos de Windows encontró archivos dañados y los reparó correctamente.
obligado Protección de recursos de Windows no detectó ninguna infracción de integridad.
Después:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
Reinicia el equipo cuando terminen.
winver) y vuelve a ejecutar DISM /RestoreHealth apuntando a ella.Punto de restauración o actualización in situ
- Busca Recuperación en Configuración, abre Restaurar sistema y elige un punto anterior al error.
- Si no hay punto válido, descarga la ISO de la versión de Windows instalada (la ves con
winver) desde la web de Microsoft, ábrela y ejecutasetup.exe. - Elige Mantener archivos y aplicaciones y sigue los pasos. La operación tarda entre 60 y 90 minutos según el disco.
Lo que ya has descartado de 0xc000007b
- La causa más frecuente son los Visual C++ Redistributable: reinstalar los x86 y x64 desde la web oficial lo arregla casi siempre.
- Las DLL sueltas descargadas de webs de terceros no se recomiendan: suelen ser de la otra arquitectura o venir modificadas.
- Si el error es en un juego, DirectX y .NET son los siguientes sospechosos antes de tocar nada de Windows.
- Cuando nada funciona, reinstalar el programa desde su instalador oficial y, en el peor caso, la actualización in situ de Windows lo resuelven.
- Si el error vuelve tras una actualización concreta, revisa el Visor de eventos para confirmar qué DLL se rompe: te dice si es regresión de un componente de Windows o del programa.
Dudas sobre el error 0xc000007b
1. ¿Hay alguna descarga oficial para arreglar el error 0xc000007b?
No existe un archivo concreto que se baje para «solucionar» este error. Lo que se necesita es identificar la causa (una DLL de 32 bits cargada por un juego o programa de 64 bits, o un problema con .NET, Visual C++ o DirectX) y reinstalar ese componente desde la web oficial de Microsoft o del propio programa.
2. ¿Por qué aparece el error 0xc000007b en Windows 10?
Suele aparecer al abrir un programa o juego y se debe a que una librería (DLL) de 32 bits se carga en una aplicación de 64 bits, o a que faltan o están dañados los paquetes de Visual C++, .NET o DirectX. También puede causarlo un antivirus que bloquea el archivo o un problema con los permisos de la carpeta del programa.
3. ¿Cómo arreglar el error 0xc000007b en Windows 10 de 64 bits?
Empieza por reinstalar los paquetes de Visual C++ Redistributable (2015-2022, x86 y x64) desde la página oficial de Microsoft y luego actualiza .NET Framework y DirectX con el instalador web de DirectX. Si sigue saliendo, repara el juego o el programa desde Panel de control > Programas y desactiva temporalmente el antivirus para descartarlo.
4. ¿Qué significa el error 0xc000007b?
Es un código de estado que indica que la aplicación no pudo iniciarse correctamente, casi siempre por una DLL incompatible (mezcla de 32 y 64 bits) o por componentes del sistema dañados. En pantalla suele ir acompañado del mensaje «The application was unable to start correctly».
5. ¿Qué DLL causa el error 0xc000007b?
No hay una DLL fija: la causa más común es una librería de 32 bits (por ejemplo msvcp140.dll o mfc140u.dll) cargada por un programa de 64 bits, o viceversa. Para detectarla, abre el Visor de eventos de Windows o un programa como Dependency Walker y mira qué DLL no se carga justo cuando aparece el error.
6. ¿Cómo arreglar «The application was unable to start correctly 0xc000007b» en Windows 10?
Reinstala los redistribuibles de Visual C++ (x86 y x64) desde la web de Microsoft, actualiza .NET y DirectX, y después repara o reinstala el programa afectado. Si sigue, abre el Símbolo del sistema como administrador y ejecuta sfc /scannow para reparar archivos del sistema dañados.
7. ¿Por qué sale el error 0xc000007b al abrir Call of Duty Modern Warfare 2?
En Call of Duty Modern Warfare 2 el fallo suele venir por una mezcla de DLL de 32 y 64 bits o por Visual C++ y DirectX desactualizados. Reinstala los redistribuibles de Visual C++ (x86 y x64), actualiza DirectX desde la web de Microsoft y verifica los archivos del juego en Battle.net o Steam para que reemplace los dañados.
Fuentes
- Epicgames0xc000007b Windows error – Epic Games Store Supportconsultado el 14/10/2026
- MicrosoftError 0xc000007b («La aplicación no se pudo iniciar correctamente») — documentación oficialconsultado el 14/10/2026
- MicrosoftSTATUS_INVALID_IMAGE_FORMAT (0xC000007B) — documentación oficialconsultado el 14/10/2026