Ayer descargué Visual Studio 2012 cuando se lanzó en MSDN. He notado que algunos de los tipos de proyectos que teníamos en 2010 ya no existen o son diferentes. La mayor diferencia para mí en este momento es la eliminación del proyecto de Windows Installer. Ahora nos vemos obligados a utilizar InstallShield LE (edición limitada). El problema aquí es que escribo un montón de Servicios de Windows y no veo cómo configurar InstallShield LE. Parece que nosotros (mi empresa) tendremos que invertir en licencias para la edición profesional.
¿Alguien ha encontrado una forma de instalar servicios en InstallShield LE? Cuando usa el proyecto de Windows Installer, simplemente configura las acciones personalizadas.
visual-studio-2012
windows-services
installshield-le
efervescente
fuente
fuente
Respuestas:
Para Visual Studio 2012 e InstallShield LE, haga lo siguiente:
Ahora, una vez que cree y ejecute su instalación, su servicio aparecerá en el complemento de Servicios de Windows.
Tenga en cuenta que esto asume que agregó un "Instalador de proyecto" a su proyecto de servicio (haga clic con el botón derecho en la hoja de diseño del servicio y haga clic en "Agregar instalador"). Puedo confirmar este trabajo en Windows 8 con Visual Studio 2012 / InstallShield LE.
fuente
Recientemente instalé VS 2012 con Install Shield LE. Al principio seguía recibiendo un error de servidor interno ISEXP -5036 después de una compilación (esto fue después de configurar un proyecto ISLE y ejecutar el Asistente de proyecto Install Shield). Finalmente descubrí que estaba intentando crear el MSI en el tipo de medio DVD-5, que es donde estaba fallando. Por alguna razón, al crear la solución nuevamente desde cero, de alguna manera se reconoce que solo se compila en los tipos de medios CD_ROM y SingleImage que funcionan.
De todos modos, para rectificar el error 5036, haga clic en la pestaña Compilar en VS 2012 (menú superior), seleccione el administrador de configuración y debería ver que su archivo de configuración IS está seleccionado en la configuración del DVD-5. Cambie esto a CD_ROM y haga clic en cerrar. Una vez que lo construya / reconstruya, se completará sin error IS 5036.
fuente
Si bien el uso de la casilla de verificación de la clase del instalador puede funcionar en algunos casos, puede experimentar el siguiente error:
Aquí hay un extracto de este enlace sobre cómo resolver este problema:
fuente
Si su proyecto es .NET, intente entonces puede usar la clase ServiceProcessInstaller con InstallShield LE.
Para que funcione con InstallShield, debe ir al árbol de "archivos" de InstallShield y hacer clic derecho en su archivo. Luego marque la casilla de verificación para "Clase de instalador" en la pestaña "Configuración de COM y .NET".
Lo hice funcionar, pero tuve problemas en algunos sistemas operativos como Windows 2008R2. Su experiencia puede ser diferente.
Aquí hay un ejemplo: http://www.codeproject.com/Articles/14353/Creating-a-Basic-Windows-Service-in-C
fuente
Tuve todo tipo de problemas con esto.
Como sigue.
La solución para mí, como se mencionó en otra parte, fue abandonar InstallShield
Muy fácil desde ese punto.
Editar: Actualización: instale la última versión desde aquí https://wix.codeplex.com/releases/view/115492 para vs 2013/2015
fuente
Los proyectos de configuración de Visual Studio están de vuelta en VS 2013 como una extensión de Visual Studio.
https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d
Actualice su solución y proyectos a VS 2013. Si todavía está en VS 2010, probablemente sea mejor que actualice directamente a VS 2013.
Mi experiencia con Installsheild LE es que es muy peculiar, pero una vez que descubres los trucos, es más fácil de usar. Sin embargo, creo que la edición limitada es una forma de Microsoft y Flexera de vender la edición con todas las funciones. En otras palabras, primero pagamos a Microsoft mucho dinero por Visual Studio y luego a su socio (en el crimen) más por Installsheild. Mala estrategia que no funcionó ya que tuvieron que traer de vuelta los proyectos de instalación en VS 2013.
fuente
He escrito sobre este tema:
Aumento de InstallShield mediante XML de Windows Installer - Servicios de Windows
Básicamente, crea un módulo de combinación usando WiX para encapsular el servicio y luego lo agrega a su proyecto installshield. (Asegúrese de asociarlo al directorio INSTALLDIR para asegurarse de que su archivo vaya donde espera). Compile y pruebe en una máquina virtual. Pedazo de pastel.
fuente
Estoy usando VS2012 e Installshield LE Spring Edition. No tuve que usar Wix.
Si encuentra el error "No se pudo crear _isconfig.xml para usar con InstallUtilLib.dll", cree una carpeta con el mismo nombre que su proyecto de instalación y dentro de la carpeta del proyecto de instalación.
Créditos para http://community.flexerasoftware.com/showthread.php?165929-Could-not-create-_isconfig-xml-for-use-with-InstallUtilLib-dll
fuente
Acabo de tener algunos problemas para encontrar dónde agregar el instalador como se indica en la respuesta. Así que aquí está cómo.
Haga doble clic en su clase de servicio dentro de su proyecto de servicio de Windows. Una pantalla en blanco con el texto "Para agregar componentes a su clase, arrástrelos desde la Caja de herramientas y use la ventana Propiedades para establecer sus propiedades ..." Haga clic derecho en cualquier lugar menos en los enlaces y seleccione "Agregar instalador"
nos vemos
fuente
Tenga en cuenta que toda la explicación anterior no le ayudará si planea crear más adelante una actualización de esa configuración. InstallShiled LE no puede detener el servicio en ejecución cuando se actualiza. Tampoco puede hacerlo desde Windows Service Installer -> evento BeforeInstall.
fuente
Quería poner esto aquí;
En VS 2015, al hacer esto, encontré el error 1001 durante la instalación repetidamente.
La respuesta en esta página explica que en las versiones más nuevas (cualquier cosa más allá de 2012) , aparentemente necesita dejar explícitamente la opción de clase de instalador sin marcar y luego agregar su servicio de Windows en la sección Servicios en el Paso 3 del proyecto de instalación:
Error 1001 al instalar el servicio personalizado de Windows
fuente