2011-10-26 10 views
5

Cuando intento depurar mi aplicación C++ me sale el errorMSVCP100D.dll falta

El programa no puede iniciarse porque MSVCP100D.dll no se encuentra en su computadora . Intente reinstalar el programa para solucionar este problema.

Encontré a alguien con un problema similar aquí: Remote debugging C++ on the Windows Server 2008 platform with VS2010; MSVCP100D.dll missing sin embargo, la solución dada allí no parece aparecer cuando voy a las propiedades de la solución.

¿Volvería a instalar Visual Studio para solucionar este problema?

+0

posible duplicado de [La aplicación no se pudo iniciar porque no se encontró MSVCP100D.dll, la reinstalación de la aplicación puede ayudar] (http://stackoverflow.com/questions/4668566/application- has-failed-to-start-because- msvcp100d-dll-was-not-found-reinstallin) –

+0

De hecho, estoy teniendo este problema al depurar, no teniendo el problema al enviarlo a otra persona. – Renari

+0

'MSVCP100D.dll' es la versión de depuración del paquete DLL redistribuible para Visual Studio 2010. Si se realiza una depuración remota en un servidor que no tiene instalado Visual Studio 2010, esa es la causa de su problema. Si ese es tu caso de uso, te sugiero que realices la depuración remota utilizando una compilación RELEASE que contenga información de depuración y optimizaciones eliminadas; esto te dará (casi) todo lo que tienes con una compilación DEBUG normal. – Chad

Respuesta

4

La reinstalación de Visual Studio solucionó el problema.

+1

No me ayudó. El archivo dll falta por completo en mi computadora portátil, por lo que no estoy seguro de cómo ayudaría la reinstalación. – Ruchir

8

Normalmente no desea MSVCP100D.dll en su sistema. Solo para fines de depuración. Si obtiene este error para su compilación de lanzamiento, debe asegurarse de no haber agregado accidentalmente una salida de proyecto etiquetada como 'Debug' a su proyecto de instalación.

Si realmente necesita depurar su software en una máquina remota, yo sugeriría que hacer lo siguiente:

Crear un nuevo proyecto de instalación llamada 'CRTDebug100Setup' y añadir los siguientes módulos de combinación (que se encuentra en C: \ Program Files \ Common Files \ Módulos de combinación):

  • Microsoft_VC90_DebugCRT_x86.msm
  • policy_9_0_Microsoft_VC90_DebugCRT_x86.msm

¡Construye y despliega en tu computadora para ser depurado!

+2

No estoy depurando de forma remota, estoy depurando localmente. – Renari

+0

+1 para módulos de fusión. –

+0

Donde en el estudio visual corrige este problema, por lo que el modo de lanzamiento no depende de msvcp100d.dll –

2

Esto también puede ocurrir si Generar información de depuración no se ajusta a Sin

Propiedades de configuración ->Enlazador ->Depuración ->Generar información de depuración

1

Seguimiento de la respuesta del l33t anterior (intenté revisarlo pero no pareció aparecer).

Agregado tarde por gpicher 10 ene 2012: Creo que esos paquetes .msm serían para una versión 9.x de la DLL en cuestión, no una versión 10.x. Resolví un problema similar que tuve al hacer un proyecto de instalación con Visual Studio 2010 instalado en una instalación de Windows de 64 bits, usando el módulo de fusión Microsoft_VC100_DebugCRT_x86.msm en la carpeta C:\Program Files (x86)\Common Files\Merge Modules. Hay una versión x64 similar de .msm si la aplicación que muestra el diálogo de error es una aplicación de 64 bits. En este caso, un tercero me estaba proporcionando una compilación de depuración de su aplicación para desarrollar y probar el nuevo código de complemento contra, por lo que no pude cambiar la configuración de compilación, y quería la funcionalidad de depuración.

1
  • Encuentra el archivo iso de la instalación de Visual Studio 2010.

  • Extraiga el archivo cab44.cab del ISO.

  • Luego extraiga el archivo "F_REDIST_DLL_APPLOCAL_msvcp100d_x86" del archivo .cab usando 7z.

  • Cambie el nombre del archivo a msvcp100d.dll.

Para la versión x64. El nombre del archivo cab es cab26.cab y el nombre del archivo es F_REDIST_DLL_APPLOCAL_msvcp100d_x64.

Para un problema similar, falta msvcr * d.dll para otra versión de Visual Studio. Aquí está la manera en que solía encontrar la respuesta:

  1. Encuentra la ISO de Visual Studio.

  2. Extraiga todo el archivo .cab.

  3. 7z.exe t * .cab> filelist.txt

  4. gvim filelist.txt

buscar el nombre del archivo interesados. Espero que esto ayude.

+0

Probé la versión de prueba de VS2010 ISO. Hay cab26.cab (tengo el sistema x64) pero no el archivo F_REDIST_DLL_APPLOCAL_msvcp100d_x64. – Ruchir