Problema con Visual C ++ programa- no puede encontrar la depuración CRT
-
23-09-2019 - |
Pregunta
Tengo un amigo que hacerse cargo de un proyecto de Visual C ++ de mí y está teniendo problemas para ejecutarlo. Es una aplicación de gráficos y utiliza la biblioteca Qt GUI. La razón por la que menciono esto es debido al error a continuación.
Se puede construir y vincular el programa utilizando Visual Studio 2010, pero cuando se ejecuta este mensaje aparece en el visor de sucesos:
generar el contexto de activación falló para "D: \ Test \ Qt \ 4.2.2 \ bin \ QtGuid4.dll". Asamblea dependientes Microsoft.VC80.DebugCRT, processorArchitecture = "x 86", publicKeyToken = "1fc8b3b9a1e18e3b", type = "win32", version = "8.0.50608.0" no pudo ser encontrado. Por favor use sxstrace.exe para el diagnóstico detallado.
Cuando hacemos como el mensaje pregunta y correr sxstrace.exe, esto es lo que vemos:
Comience activación de contexto Generación. Parámetro de entrada: Banderas = 0 ProcessorArchitecture = Wow32 CultureFallBacks = en-US, ES ManifestPath = D: \ Test \ Qt \ 4.2.2 \ bin \ QtGuid4.dll AssemblyDirectory = D: \ Test \ Qt \ 4.2.2 \ bin \
--------------- INFORMACIÓN: análisis sintáctico manifiesto de archivo D: \ Test \ Qt \ 4.2.2 \ bin \ QtGuid4.dll. INFORMACIÓN: Definición de identidad es manifiesto (nulo). INFORMACIÓN: Referencia: Microsoft.VC80.DebugCRT, processorArchitecture = tipo "x86" = "win32", version = "8.0.50608.0" Solución de referencia: INFO Microsoft.VC80.DebugCRT, processorArchitecture = "x 86" "win32", versión = "8.0.50608.0". INFORMACIÓN: La resolución de referencia para ProcessorArchitecture WOW64. INFORMACIÓN: La resolución de referencia para la cultura Neutral. INFORMACIÓN: La aplicación de Encuadernación Política. INFORMACIÓN: la política editorial No se encontró. INFORMACIÓN: No se encontró la política de redirección de enlace. INFORMACIÓN: Iniciación de Montaje sondeo. INFORMACIÓN: ¿No ha encontrado el conjunto en WinSxS. INFO: Intento de sondear manifiesta en C: \ Windows \ assembly \ GAC_32 \ Microsoft.VC80.DebugCRT \ 8.0.50608.0__1fc8b3b9a1e18e3b \ Microsoft.VC80.DebugCRT.DLL. INFORMACIÓN: No ha encontrado ningún manifiesto de la cultura neutral. INFORMACIÓN: ensamblaje final sondeo. Solución de referencia: INFO ProcessorArchitecture para x86. INFORMACIÓN: La resolución de referencia para la cultura Neutral. INFORMACIÓN: La aplicación de Encuadernación Política. INFORMACIÓN: la política editorial No se encontró. INFORMACIÓN: No se encontró la política de redirección de enlace. INFORMACIÓN: Iniciación de Montaje sondeo. INFORMACIÓN: ¿No ha encontrado el conjunto en WinSxS. INFO: Intento de sondear manifiesta en C: \ Windows \ assembly \ GAC_32 \ Microsoft.VC80.DebugCRT \ 8.0.50608.0__1fc8b3b9a1e18e3b \ Microsoft.VC80.DebugCRT.DLL. INFO: Intento de sondear manifiesta en D: \ Test \ Qt \ 4.2.2 \ bin \ Microsoft.VC80.DebugCRT.DLL. INFO: Intento de sondear manifiesta en D: \ Test \ Qt \ 4.2.2 \ bin \ Microsoft.VC80.DebugCRT.MANIFEST. INFO: Intento de sondear manifiesta en D: \ Test \ Qt \ 4.2.2 \ bin \ Microsoft.VC80.DebugCRT \ Microsoft.VC80.DebugCRT.DLL. INFO: Intento de sondear manifiesta en D: \ Test \ Qt \ 4.2.2 \ bin \ Microsoft.VC80.DebugCRT \ Microsoft.VC80.DebugCRT.MANIFEST. INFORMACIÓN: No ha encontrado ningún manifiesto de la cultura neutral. INFORMACIÓN: ensamblaje final sondeo. ERROR: No se puede resolver referencia Microsoft.VC80.DebugCRT, processorArchitecture = "x86", publicKeyToken = "1fc8b3b9a1e18e3b", type = "win32", version = "8.0.50608.0".
Lo siento por la longitud de ese mensaje, pero pensé que podría correr algunos recuerdos. Es este un caso de su no tener el Visual C ++ 2005 (creo que ahí es donde el VC80 viene) instaladas las bibliotecas de tiempo de ejecución C? Si es así, ¿puede descargar el paquete de redistribución VC ++ e instalarlo, y todo estará bien, entonces? O se trata de un problema completamente diferente?
Solución
Si su amigo no tiene instalado VS2005, no va a tener las bibliotecas de tiempo de ejecución de depuración para ello. No son parte de los tiempos de ejecución pueden distribuir y IIRC, Microsoft le prohíbe su distribución a sí mismo por lo que tiene que tener instalado VS2005 con el fin de obtenerlos.
Yo sugeriría que él había reconstruir la biblioteca afectada si es posible; Vagamente recuerdo que hay un par de artículos en la web sobre la manera de reconstruir la GPL QT utilizando Visual Studio, que creo que no está soportado oficialmente.
Mezcla tiempos de ejecución de C ++ requiere mucho cuidado y se puede caer en una trampa bastante desagradable si no lo hace exactamente correcto. Si la reconstrucción de todas las bibliotecas con VS2010 no es una opción, su amigo tendrá que hacerse con VS2005. Puede ser que valga la comprobación de si la EM sigue ofreciendo la edición expresa de VS2005 para su descarga.
Otros consejos
Es posible que así podría hacer a continuación: LOL
Si está ejecutando la aplicación en modo de Windows 7 X64 que se acumulan en el objetivo X64, tiene que instalar el siguiente paquete redistribuible X64 SP1
http://www.microsoft.com/download/en/ details.aspx? id = 2092
Nota: El archivo de manifiesto debe cambiar a processorArchitecture = X64 y tipo = "win64"
Si usted está construyendo su aplicación con X86 (modo de 32 bits) que se ejecutan en la parte superior de la capa de WOW64 tiene que instalar X86 SP1 paquete redistribuible
http://www.microsoft.com/download/ es / details.aspx? displaylang = es & id = 5582