2009-03-21 28 views
10

Cuando crea un proyecto de instalación para una aplicación de Windows/consola, encuentra que hay dos salidas..Proyectos de instalación de .NET con Visual Studio 2008

  1. Setup.exe
  2. .msi

¿Qué setup.exe y MSI hacer? ¿Cuál debería usarse para la instalación?

He visto que puedo instalar la aplicación usando ambos. Pero Setup.exe es un archivo bastante pequeño en comparación con el archivo .MSI.

Preguntas

  1. Si tengo que enviar al cliente. No puedo enviar dos archivos ¿Cuál es el mejor enfoque para combinar estos dos archivos en un archivo de instalación?

  2. He leído que Setup.exe es un programa de arranque que verifica el framework .NET y luego llama al archivo .MSI. ¿Es correcto?

  3. No pude probar la falta de disponibilidad de .NET framework porque soy un desarrollador de .NET y también mi equipo trabaja en .NET y tiene .NET instalado. No quería arriesgar el Visual Studio desinstalando .NET Framework y probando la aplicación de configuración.

¿Cómo instala .NET framework? Es 200 MB impar, pero mi configuración es menos de 3 MB.

¿Le da la opción de descargar o algo así?

Cualquier ayuda apreciada.

Gracias,

+1

Ligeramente relacionado con su pregunta. Echa un vistazo a Virtual PC. Es muy útil para probar la implementación de software. También es gratis. Necesitas una licencia para la copia de Windows que utilizas, pero creo que MSDN lo cubre si solo estás utilizando el virtual para las pruebas. – pipTheGeek

Respuesta

6

El MSI es el instalador para su aplicación. El archivo de instalación es un programa de arranque que verificará los requisitos previos. Como la versión correcta del instalador de Windows. Creo que también es el setup.exe el que permitirá la descarga de la versión correcta del .NET framework. Puede usar .MSI por sí mismo, no puede usar simplemente setup.exe.

Tiene razón en que la configuración permite la descarga de la versión correcta de .NET framework.

Existen formas de combinar MSI y Setup.exe para crear un solo exe. Cosas como un zip autoextraíble o iexpress.

¿Por qué no puedes enviarles ambos archivos? Creo que si publicas la configuración y msi en un servidor para descargar, la configuración buscará y descargará tu MSI cuando sea necesario.

+0

Buena respuesta, pero afaik no es del todo correcto. Un MSI no puede lanzar otro MSI debido al carácter transaccional de una instalación (al menos hasta la versión actual de MSI). Por lo tanto, su propio MSI no puede iniciar la configuración de .NET Framework, debe ser iniciado por un programa de arranque independiente. –

+0

Me interesaría mucho si tiene más información sobre cómo combinar bootstrapper y MSI en una nueva MSI. Creo que esto no es posible. Sin embargo, puede usar herramientas como WinZip o IExpress para crear un instalador autoextraíble. –

+0

@divo - 1) tienes razón, he corregido mi respuesta. y 2) quise decir combinado en un exe, no en un MSI. He aclarado mi respuesta. – pipTheGeek

1

Setup.exe es realmente un programa de arranque que verifica si los requisitos previos están disponibles en la máquina del cliente. Esto incluye .Net Framework, pero también, por ejemplo, SQL Compact Edition cuando selecciona esto en las propiedades del proyecto. No desinstalará nada. Cuando se requiera un requisito previo, se le dará la opción de descargarlo de Internet o detener la instalación.

El archivo MSI es un archivo de Windows Installer que contiene su software.Este MSI se encarga de instalar su producto en la máquina del cliente. Si envía solo el MSI, el producto solo se instalará en un equipo que tenga todos los requisitos previos instalados antes de iniciar el MSI.

Si desea hacer una sola distribución de archivos, puede combinar los 2 archivos en un único archivo EXE utilizando iexpress. (Iexpress es una pieza de software que se distribuye con Windows y le permite crear paquetes de instalación.)

Espero que esto ayude.

2

La razón de la instalación separada.exe creo que se debe al hecho de que no puede tener dos instalaciones MSI ejecutándose al mismo tiempo. Por lo tanto, si su aplicación requiere prerrequisitos instalados por el MSI, su instalación tendrá problemas.

Con respecto a la configuración del marco, podría en la configuración del proyecto incluir el .NET Framework como un requisito previo de su aplicación y se instalará si no está presente en la máquina de destino. También puede optar por empaquetar la instalación o descargarla de Internet

Cuestiones relacionadas