visual studio 2010 - El prerrequisito de Visual C++ 2010 Runtime Libraries sigue apareciendo en un instalador creado por VS 2010
visual-studio-2010 visual-c++ (1)
Esto sucede porque el criterio de detección de requisitos previos es incorrecto.
Una solución es crear su propio prerrequisito personalizado con un criterio correcto. Quizás este artículo ayudará: here
Los proyectos de instalación de Visual Studio no son compatibles. Pero se puede hacer generando manualmente los manifiestos requeridos.
Puede encontrar la estructura de manifiestos aquí: http://msdn.microsoft.com/en-us/library/ms229223(VS.80).aspx
Estos manifiestos se pueden generar automáticamente con la herramienta Bootstrapper Manifest Generator .
Después de generar los manifiestos del paquete, puede agregar todos estos archivos (incluido el paquete) en una carpeta separada en la carpeta de requisitos previos de Visual Studio, por ejemplo:
C:/Program Files/Microsoft SDKs/Windows/v7.0A/Bootstrapper/Packages/
A continuación, puede seleccionar el requisito previo en la página de propiedades de su proyecto de instalación.
Creé un instalador con Visual Studio 2010 Versión 10.0.40.219.1 SP1 Rel. Mi aplicación está compilada / compilada para x86 y requiere bibliotecas de tiempo de ejecución de VC ++. Por lo tanto, el proyecto de configuración se configura con las bibliotecas de tiempo de ejecución de VC ++ como requisito previo.
Cada vez que ejecuto el instalador aparece la ventana emergente "Los siguientes componentes se instalarán en su máquina". "Visual C ++ 2010 Runtime Libraries (x86)". La primera vez que se instala como esperado. La segunda y posteriores veces me pregunta si reparar o eliminar VC ++ 2010.
Esta ventana emergente solo se debe mostrar una vez, la primera vez que se descubre que VC ++ redistribuible no está instalado.
¿Alguien ha visto esto? ¿Alguien sabe cómo puedo solucionar esto?
Solución:
La respuesta que acepté me dio lo que necesitaba para resolver el problema. Aquí están los detalles sobre lo que hice para arreglar esto, lo cual fue muy simple de hecho. Edité el archivo:
C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/Bootstrapper/Packages/vcredist_x86/product.xml
En este archivo encontrará lo siguiente:
<InstallChecks>
<MsiProductCheck Property="VCRedistInstalled" Product="{6EE91C1A-A2E7-38CD-AEBB-3B900A4D8868}"/>
</InstallChecks>
Lo anterior contiene el código de producto incorrecto. Reemplace lo anterior con el código de producto correcto para el redistribuible de Visual C ++ 2010 SP1 de la siguiente manera:
<InstallChecks>
<MsiProductCheck Property="VCRedistInstalled" Product="{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}"/>
</InstallChecks>
El enlace here muestra los códigos de producto correctos para los diversos redistribuibles de VC ++ 2010.