2009-01-09 14 views
28

¿Cómo puedo hacer que mi paquete Wix descargue el .NET Framework requerido cuando aún no está instalado en la máquina del cliente? Ya tengo la condición de verificar la versión de .NET instalada, pero no estoy seguro de cómo descargarla e instalarla cuando no la encuentre.Wix and .NET Framework (requisitos previos)

ClickOnce lo hace automáticamente al marcar los requisitos previos en las páginas de propiedades. Solo necesito hacerlo en Wix debido a otros requisitos.

Gracias!

+1

vieja pregunta, Wix ahora sabe que hacer requisitos previos. – kroiz

+0

** ACTUALIZACIÓN **: Eche un vistazo aquí: ** [Cómo: Instalar .NET Framework usando Burn] (http://wixtoolset.org/documentation/manual/v3/howtos/redistributables_and_install_checks/install_dotnet.html) * * –

Respuesta

36

ACTUALIZACIÓN Ago 2017: Esta muy buena respuesta ahora parece desactualizada. Lea también las otras respuestas en el "hilo" para ver algunas "opciones de arranque" diferentes.


El paquete MSI creado por Wix no puede hacer eso. Windows Installer es bastante limitado y un archivo MSI (su instalador) no puede llamar a otro archivo MSI (el instalador de .NET Framework).

Deberá crear un llamado bootstrapper (un archivo setup.exe) que puede verificar los requisitos previos especificados, descargarlos e instalarlos según sea necesario, y luego inicia su instalador MSI.

Una forma de crear el bootstrapper es mediante el uso de Visual Studio o la tarea MSBuild GenerateBootstrapper. Aquí hay un enlace que da más detalles:

http://wix.mindcapers.com/wiki/Bootstrapper

Si sólo desea proporcionar un único instalador a sus usuarios es posible que desee crear un paquete de instalación autoinflable que contiene tanto el archivo setup.exe y tu paquete de MSI. Puede hacerlo con iexpress, que viene con Windows.

Aquí hay otro enlace que da un ejemplo: http://www.clariusconsulting.net/blogs/pga/comments/42831.aspx

9

DotNetInstaller también es recomendado por muchos desarrolladores como buenos y sólidos como bootstrapper.

ACTUALIZACIÓN: URL actualizada a DotNetInstaller, agosto de 2017.

+0

DotNetInstaller es mi programa de arranque favorito hasta ahora. – mcdon

+0

Estoy usando este con gran éxito. –

7

En Wix 3.6 utilizando el programa previo de todo lo que necesita para agregar .NET 4.0 como requisito previo para ser descargado, si es necesario se ..

a) Añadir una referencia a la WixNetFxExtension.dll archivo en el programa previo/gestionado Bootstrapper proyecto

b app) Añadir el siguiente como el primer elemento de la cadena ..

<PackageGroupRef Id="NetFx40Web"/> 

Eso realmente es!

Más información aquí: wixnetfxextension documentation

Cuestiones relacionadas