2012-05-22 6 views
7

Quiero ejecutar mi exe después de la instalación usando InstallShield. InstallShield completa la configuración correctamente pero no ejecuta el exe.Ejecutar exe de la solución después de installtion usando installshield

Encontré otra manera de agregar un exe en el inicio, pero se ejecuta después de reiniciar. Me gustaría que se ejecute sin reiniciar.

¿Es posible?

+1

¿Qué tiene que ver con asp.net? – Aristos

+1

Nada. Tampoco importa que el EXE sea una aplicación C#. Etiquetas eliminadas También ayudaría a entender qué versión, edición y tipo de proyecto se está utilizando en InstallShield. –

Respuesta

15

¿Qué versión y edición de InstallShield está utilizando? Además, ¿qué tipo de proyecto estás usando? (? InstallScript, InstallScript MSI, MSI básico)

Suponiendo MSI básico, InstallShield tiene un patrón incorporado para apoyar esta historia:

1) Haga clic en el Asistente de Proyecto Tab

2) Haga clic en el icono entrevista de instalación (Página)

3) Haga clic en Sí para "¿quieres dar a los usuarios la opción de iniciar su aplicación al finalizar la instalación?

4) Haga clic en el botón Examinar para seleccionar el archivo EXE que Shou Sería el objetivo de la operación.

De manera predeterminada, no se seleccionará la casilla de verificación (programa de inicio) en el diálogo de configuración completada. Para seleccionarlo, agregue automáticamente la propiedad LAUNCHPROGRAM a la tabla de propiedades y establézcala en un valor de '1'.

+1

Seguí estos pasos y se inicia mi aplicación. Sin embargo, la IU no se muestra. Pero si hago clic en el atajo en el escritorio aparece la interfaz de usuario. No sé lo que me estoy perdiendo ya que soy nuevo en esto. – skb

+0

Supongo que su aplicación es sensible al directorio de trabajo y que está siendo proporcionada por su acceso directo. –

4

La respuesta de Christopher Painter funcionará para usted la mayor parte del tiempo. Esos son los pasos iniciales a seguir, pero hay algunos detalles adicionales si encuentra que eso no es suficiente. Por ejemplo, skb informó que esto no funcionó para él. Descubrí que estaba en el mismo barco (¡aunque construí una docena más de instaladores que hicieron este trabajo!).

  1. Siga las instrucciones de Christopher Painter.
  2. Haga clic en la pestaña "Diseñador de instalación". Dentro de "Interfaz de usuario", seleccione "Diálogos".
  3. En "Todos los cuadros de diálogo", expanda "SetupCompleteSuccess" y seleccione "Comportamiento".
  4. Seleccione el control de botón "Ok". Luego, selecciona "Eventos". (mira hacia la parte inferior de la pantalla donde dice Eventos/Suscripciones/Condiciones)
  5. Debes tener un evento "DoAction", con un "argumento" igual a "IS_LAUNCH_MY_PROGRAM_PLEASE" y una "condición" de "LAUNCHPROGRAM". Si no, agrega eso. "LAUNCHPROGRAM" se refiere a la propiedad de ese nombre. Tendrá un valor de 1 si se selecciona la casilla de verificación de lanzamiento, y así cumple con esta condición. IS_LAUNCH_MY_PROGRAM_PLEASE hace referencia a la acción personalizada que se inicia. Si lo desea, puede cambiar esa CA aquí para hacer que se active una acción personalizada. Opté por dejar esto en paz, pero reemplacé la CA con una propia.
  6. Abra su lista de Acciones personalizadas (Comportamiento y lógica ... Acciones y secuencias personalizadas). Debería encontrar una CA llamada IS_LAUNCH_MY_PROGRAM_PLEASE. ¡Bórralo!
  7. Agregue su propia CA IS_LAUNCH_MY_PROGRAM_PLEASE. Haga clic con el botón derecho en "Acción personalizada" (el encabezado de la lista) y seleccione el tipo de CA que desea, o inicie el asistente. Solo asegúrese de ponerle el nombre "IS_LAUNCH_MY_PROGRAM_PLEASE" si dejó el comportamiento del diálogo como está predeterminado.
  8. Para iniciar un exe - con el DIRECTORIO DE TRABAJO cambiado (que era el motivo por el que mi aplicación no aparecía, y aparentemente skb también según los comentarios) Seleccione "Nuevo EXE" ... "Ruta haciendo referencia a un directorio".Cambie "Procesamiento de devolución" a "Asíncrono (sin esperar la finalización)". Tenga en cuenta que el "número de tipo MSI" pasa a ser 226. Establezca el "Directorio de trabajo" en INSTALLDIR (suponiendo que el programa que desea iniciar se encuentre en el directorio de su nuevo programa). Establezca "Nombre de archivo & línea de comando" en [INSTALLDIR]YourApp.exe.
+0

Alternativamente, uno podría simplemente arreglar su aplicación para que no sea sensible al directorio de trabajo. –

+0

Eso es cierto ... Pero eso no es necesariamente más rápido y fácil. Hay una buena razón para configurar un directorio de trabajo es un rasgo virtualmente universal para cualquier cosa que inicie otros procesos, y por qué hay una opción para eso en IS también. ¿Rediseña la capacidad de tu programa para resolver rutas relativas, para apaciguar al instalador? Eso parece estar al revés. Otros instaladores suelen hacer esto trivial. No debe tener un acoplamiento estrecho con su instalador. – BuvinJ

+0

Yo diría que tener el parche del instalador alrededor de un defecto de la aplicación está al revés. Tener el instalador estableciendo el directorio de trabajo ES de acoplamiento hermético. Y probablemente sea más rápido y fácil porque el desarrollador que hace la pregunta probablemente entiende mejor su aplicación que el instalador. –

Cuestiones relacionadas