2011-09-30 13 views
9

Acabamos de migrar nuestro instalador de WiX 2.xa WiX 3.6 y comenzamos a usar Burn. Previamente, estábamos instalando el Visual C++ redistribuible incluyendo los archivos .msm de C:\Program Files\Common Files\Merge Modules en nuestro MSI. Esos archivos están siempre sincronizados con el que usamos para construir nuestro producto (Microsoft los actualiza frecuentemente para incluir soluciones de seguridad).Cómo implementar los redistribuibles de Visual C++ en WiX usando Burn

Ahora, nos gustaría tener el Visual C++ redistribuible descargado solo si es necesario mediante el uso del marco de Burn. Sin embargo, Burn no define un elemento MsmPackage para colocar dentro de Chain.

¿Cuál es el mejor enfoque para implementar Visual C++ redistribuible utilizando Burn?

+0

¿Qué tal crear un "vc redist-msi" que incluya solo el archivo vc redist msm? –

+0

Ese era el enfoque que estaba pensando, pero la respuesta de Bob parece implicar menos gestión. – decasteljau

Respuesta

7

Los módulos de combinación solo se pueden combinar en .msi; no se pueden instalar de forma independiente. Puede usar ExePackage para instalar el vcredist * .exe apropiado.

+0

Gracias Bob. Acabo de encontrar más sobre el tema aquí: http://msdn.microsoft.com/en-us/library/ms235316.aspx – decasteljau

1

Esto es lo que debe hacer:

  1. crear un proyecto de MSI que sólo incluye los módulos de combinación que necesita.
  2. Fije el número de versión del paquete MSI, el código del producto y el código de actualización.
  3. Usa la MSI en tu paquete.

Ahora 2) se asegurará de que en actualización de gran alcance el MSI no se instalará, o si se trata de una carga útil externa, no se descargará.

El problema con el paquete vcredist*.exe es que algunos usuarios pueden pensar que se trata de una instalación independiente y desinstalarlo y romper su aplicación.

Cuestiones relacionadas