/ / ¿Por qué el acceso directo creado por mi instalación de MSI inicia el proceso de configuración cada vez? - c #, .net, instalador de windows

¿Por qué el acceso directo creado por mi instalación de MSI inicia el proceso de configuración cada vez? - c #, .net, instalador de windows

Creé mi instalador MSI para nuestra aplicación C #a través de VS 2008. Lo instalé. Se creó un acceso directo para mí en el escritorio. Hice clic en ese acceso directo, el proceso de instalación se ejecutó de nuevo y al final se lanzó nuestra aplicación. No fue así ayer antes de agregar alguna acción personalizada para crear la base de datos. No recreé el acceso directo en el instalador. ¿Por qué es así?

Respuestas

5 para la respuesta № 1

MSI viene con una función de reparación automática que verifica si todos los componentes instalados por MSI todavía están presentes cuando inicia su aplicación utilizando el acceso directo.

En su caso, probablemente se hayan eliminado uno (o más) componentes para que el instalador se inicie nuevamente para reparar su instalación.

Para evitar que la reparación automática se ejecute

  • Asegúrese de que no se elimine ningún archivo, configuración de registro u otro componente instalado

o

  • No establezca la ruta de acceso clave para esos componentes. Eso evitará que MSI compruebe esos componentes específicos

De tus otras preguntas parece que tu MSIha sido creado por un proyecto de instalación e instalación de Visual Studio. Desafortunadamente, no hay ninguna opción para modificar la ruta de acceso de la clave desde Visual Studio. Tienes las siguientes opciones:

  • Modifique el MSI manualmente usando Orca (esta no es una buena opción porque es un paso manual)
  • Escribe un guión, por ejemplo. usando VBScript para parchear el archivo MSI
  • Vaya a un sistema de instalación más avanzado que le brinde más control, como WiX o NSIS

6 para la respuesta № 2

Abre el MSI manualmente usando Orca. Agregue el siguiente registro a la tabla de propiedades (propiedad, valor) sin las comillas:

Propiedad = "DISABLEADVTSHORTCUTS" Valor = "1"

Esto también puede ser ejecutado como parte de un evento posterior a la compilación.


1 para la respuesta № 3

¿El acceso directo está apuntando a su aplicación o su configuración? Si apunta a su configuración y la cambia a su aplicación, ¿desaparece el problema?


1 para la respuesta № 4

Parece que el sistema piensa que la instalación se ha corrompido y está intentando automáticamente una reparación. Cualquier cosa en los registros de eventos (busque el origen de MsiInstaller en el registro de eventos de la aplicación).

¿Has estado construyendo múltiples copias?


1 para la respuesta № 5

Esto sucede cuando la aplicación elimina un archivo que se implementó durante la instalación. La reparación automática se activa y, por lo tanto, aparece la pantalla de instalación.


0 para la respuesta № 6

Tenía el mismo problema. En mi caso, resultó que el problema eran los campos "Fabricante" y "Nombre de producto" dentro de las propiedades del Proyecto de desalojamiento. Debe ser la misma que la estructura de carpetas a la que apunta su acceso directo; de lo contrario, terminará con el "C: Archivos de programa (x86) [El recurso] [Nombre del producto]" No existe el error "del recurso" en el Visor de eventos .