He visto esta pregunta muchas veces pero ninguna de las respuestas parece funcionar para mí. Obviamente me falta algo elemental, ¡pero parece que no puedo descubrir qué es! Solo he usado WiX durante un par de días, así que todavía soy muy nuevo en eso.El archivo de comprobación de WiX existe antes de la instalación
Básicamente, he creado un complemento para un producto existente, y quiero verificar que el producto esté instalado antes de permitir que se instale mi complemento. Creo que la forma más simple es verificar que el ejecutable principal esté en el directorio correcto.
Mi código relevante hasta el momento:
<Property Id="FILEEXISTS">
<DirectorySearch Id="CheckFileDir" Path="INSTALLDIR" Depth="0">
<FileSearch Id="CheckFile" Name="main.exe" />
</DirectorySearch>
</Property>
<Condition Message="File does exist.">NOT FILEEXISTS</Condition>
Dónde INSTALLDIR
es el Id
del directorio en el main.exe debe ser y se define en las etiquetas anidadas Directory
.
¡Buen punto, Cosmin! Supongo que en este caso el INSTALLDIR debería ser buscado en el registro donde la instalación de la aplicación principal lo puso en ... –
Sí, recuperar la ruta de instalación anterior desde el registro es una buena idea. –
Hola, gracias por eso. Entiendo por qué ahora. Cambiaré a una búsqueda de registro para obtener la ruta para una solución más completa. Mientras tanto, lo tengo que trabajar cambiando @Path a "[ProgramFilesFolder] Manufacturer/ProductFolder" y la condición a "FILEEXISTS" en lugar de "NOT FILEEXISTS" – Chris