Después de leer this answer sobre el enfoque de "un archivo por componente" al usar WiX, tenía curiosidad por saber cuáles son las mejores prácticas al usar el atributo KeyPath
en otros elementos, incluyendo Component
, Directory
, Registry
etc, etc.Wix: Uso de KeyPath en componentes, directorios, archivos, registro, etc.
estoy interesado en cualquier sugerencia general, pero aquí hay un par de preguntas concretas:
- Si tengo un directorio vacío que necesita para crear instalador debería I establecer
KeyPath="yes"
enDirectory
o su padreComponent
? ¿Qué pasa si es no está vacío? - Si un archivo tiene
KeyPath="yes"
en un escenario de archivo por componente, ¿es necesario o una buena práctica configurarlo en su componente principal? - He leído en alguna parte que en lugar de establecer
KeyPath
en un archivo, una debe utilizar una clave de registro para cada archivo y establecerKeyPath="yes"
en elemento de registro ... ¿Es realmente cierto/necesario?
Gracias!
editar # 1 - Aclaración Re: Directory
yo era consciente de Directorio no tener KeyPath, pero no fue explícito/detallada en mi pregunta. Principalmente, tenía curiosidad sobre el uso de KeyPath en un componente cuando se debe crear un directorio vacío. Estoy viendo que KeyPath = "yes" está en ese caso en el Componente principal. ¿Pero es eso suficiente para que el instalador detecte/repare la carpeta vacía que falta? ¿O debería usarse junto con la entrada de registro? Fragmentos de ejemplo:
<Directory Id="LOGS" Name="Logs">
<Component Id="LogsDir" Guid="*" KeyPath="yes">
<CreateFolder Directory="LOGS" />
</Component>
</Directory>
Hay un caso en el que se recomienda utilizar una entrada de registro adicional ya que se recomienda la ruta clave: cuando se tiene un componente que no contiene ningún otro recurso que pueda servir como keypath. El ejemplo típico es un componente que instala un acceso directo. –
@WimCoenen, gracias, ¡es una nota valiosa! –
@Yan Sklyarenko Gracias por la respuesta detallada. Sabía que Directory no tiene KeyPath, pero actualicé mi pregunta para aclarar el contexto en el que estaba relacionado con KeyPath. Por cierto, tiene razón al decir que Win Installer es complejo, y mi objetivo era asegurarme de no complicar mis instalaciones. Es por eso que hice la pregunta :) El tutorial sobre WiX es bastante bueno, pero no pude encontrar una fuente de "mejores prácticas" que incluyera consejos útiles (como un Wim Coenen publicado en su comentario) – zam6ak