Oye, tengo una MSI, construida con WiX, que intenta especificar una condición de inicio que se satisface solo cuando IIS está instalado. Esta condición no funciona como se desea en WS2008 x64. Funciona en mi máquina con Windows 7 x64.WIX MSI que tiene una condición de inicio para pre-solicitud de IIS, falla en WS2008
La propiedad:
<!-- This is used later in a Launch condition. -->
<!-- see http://learn.iis.net/page.aspx/135/discover-installed-components/ -->
<Property Id="IIS7" Value="#0">
<RegistrySearch Id="IIS7W3SVC"
Type="raw"
Root="HKLM"
Key="SOFTWARE\Microsoft\InetStp\Components"
Name="W3SVC" />
</Property>
La condición:
<Condition Message="Cannot install. You must install IIS before installing this product.">
NOT IIS56 = "#0" OR NOT IIS7 = "#0"
</Condition>
(también hay una propiedad para IIS6, pero que debería ser irrelevante aquí).
Un usuario informa que está viendo este mensaje de "no se puede instalar". También dice que IIS está instalado y funcionando.
¿WS2008 tiene una clave de registro diferente para la presencia de IIS?
¿Cuál es el mecanismo preferido para determinar si IIS está presente?
Esto es WIX 3.5. No estoy seguro de la versión exacta de WS2008.
Puede ser similar a the issue described here. Esa pregunta no está resuelta.
ideas?
+1. @ Chee, estás reinventando la rueda con ese enfoque. –
Obtuve ese enfoque de un post de Wix Board en algún lado. Funcionó por un tiempo. – Cheeso
Solo como una nota al margen. Cuando eliminé el rol de IIS, sigo recibiendo ISSMajorversion, por lo que no es 100% seguro para verificar si el IIS está instalado. – uli78