2010-06-07 35 views
24

Tengo un msi creado para un proyecto que usa C# & Jscript. la versión 1.0 es actualmente pública. Quiero lanzar una versión v-1.0.1 corregida de errores de este paquete, pero mientras la pruebo, recibo "Ya está instalada otra versión de este producto. La instalación de esta versión no puede continuar. Para configurar o eliminar la versión existente de este producto, use Agregar/Quitar programa en el Panel de control ".Embalaje de Visual Studio: Ya está instalada otra versión de este producto

Quiero que esta versión corregida de errores se instale silenciosamente sin pedir al usuario que desinstale e instale uno nuevo. Por favor, ayúdenme cómo puedo lograr esto, estoy usando Visual Studio 2008.

¡Gracias de antemano!

Sam

Actualización: He intentado cambiar el código de paquete, pero que crea dos instancias del paquete usando el mismo directorio de trabajo. Geeks de Visual Studio por favor ayuda.

Respuesta

28

Me gustaría seguir este proceso

En su proyecto principal

  • Incremento su versión de ensamblado sin .

En el proyecto de instalación de Visual Studio

  • Set "Quitar la versión anterior" a la verdadera
  • Incremento de la Versión no (esto cambiar el código de producto para usted también)
+1

Se ha aumentado la versión de ensamblaje no [assembly: AssemblyVersion ("1.0.3.7")] [assembly: AssemblyFileVersion ("1.0.3.7")] para el componente principal del paquete. Establezca "RemovePreviousVersion" en "8: TRUE" Cambió el número de versión a "1.0.3.7" de "0.0.28" El problema persiste. – Sam

+0

Hice esto para un servicio, que reemplazó, y ahora no se puede instalar porque el servicio ya está registrado. Pero, por supuesto, la instalación de la nueva versión se retrotrajo y se eliminó de los programas para agregar/eliminar, por lo que no puedo desinstalar el original. ¡InstallUtil al rescate! –

+0

Ahorre mi día. En mi caso, necesito instalar el mismo servicio para diferentes nombres y diferentes cadenas de conexión. Tengo un nombre de visualización y un nombre de servicio diferentes para cada proyecto. Cambiar el número de versión ayuda. –

4

Debe especificar UpgradeCode e incrementar ProductVersion para actualizar un producto. UpgradeCode seguirá siendo el mismo para las versiones más nuevas.

The UpgradeCode property indicates a family of related applications consisting of different versions and different language versions of the same product.

En este artículo se explica el código de producto, ProductVersion y UpgradeCode:

http://msdn.microsoft.com/en-us/library/aa370837%28v=VS.85%29.aspx

+1

es lo que tengo en mi archivo .vdproj: "Nombre" = "8: Microsoft Visual Studio" "ProductCode" = "8: {8A3BC7ED-563E-42C1-ABEA-AAB14133E1AC}" "PackageCode" = "8: {24D081CF-EA46-4CA0-B3F7-D4DC60BC5FD8}" "UpgradeCode" = "8: {6F11B335-5F1E-4B4A-8565- 6CCE50A8C599} " ... " ProductVersion "=" 8: 0.0.26 " Cuando cambio la ProductVersion a" 8: 0.0.27 "y compilo el msi. Aún recibo el mismo mensaje 'Otra versión de este paquete ...'. Por favor ayuda! – Sam

13

pasos para resolver el error:

  1. ejecute el siguiente comando desde el símbolo del sistema:

msiexec /i program_name.msi /lv logfile.log

donde program_name.msi es la nueva versión

/lv es log Salida detallada

  1. abre el archivo de registro.ingresar en el editor de

  2. encontrar el GUID en el registro de

me encontré en lo siguiente:

Product Code from property table before transforms: '{GUID}'

  1. ejecutar el msizap siguiente comando desde visual studio command prompt si ya lo tiene instalado u obténgalo del sitio web de Microsoft

    Windows SDK Components for Windows Installer Developers

msizap.exe TWP {GUID}

que hizo el truco y se retira el servicio instalado con éxito.

Extracto de [SOLUCIONADO] Otra versión de este producto ya está instalada. La instalación de esta versión no puede continuar. Para configurar o quitar la versión existente de este producto, utilice Agregar/quitar programas en el Panel de control] 2

+0

Esto funcionó para mí. Al principio se perdió la parte sobre "aviso de comando de Visual Studio", podría ser bueno para eso. – Derek

+0

Lo usé para algo no relacionado con VS y me ahorraste horas de trabajo. ¡También puede decir msizap TW (nombre MSI) para borrar todo del paquete MSI! –

3

Configuración Abrir Propiedades del proyecto Haga clic CódigoProducto .. Nuevo Código Haga clic UpgradeCode .. Nuevo Código Reconstruir e instalar

Siguiendo
+1

Probablemente no sea una buena idea ya que terminará con varias versiones de lo mismo instalado: desea que detecte y desinstale la versión anterior. –

Cuestiones relacionadas