Tengo una aplicación con varios archivos que contienen parámetros de configuración y otros datos que cambian a medida que el usuario usa la aplicación. Estos archivos pueden cambiar con versiones más nuevas de mi software, pero el usuario también puede modificarlos (o pueden ser modificados por la aplicación). Básicamente, estoy buscando una solución para evitar que se sobrescriban los cambios de los usuarios en estos archivos, pero también una forma de instalar los archivos potencialmente actualizados cuando el usuario actualice mi software.Administrar archivos de configuración con WiX
Con RPM en * NIX, podría usar la función% config para definir un archivo como archivo de configuración y RPM cambiaría el nombre del archivo existente (si existía) e instalaría el nuevo en una actualización (tal vez no ideal, pero podría vivir con algo así para WiX).
Me gustaría instalar mis archivos de configuración en un subdirectorio o incluso en un nombre diferente (por ejemplo, default.cfg) y luego usar el elemento <CopyFile>
en WiX para copiar los archivos en sus ubicaciones correctas. De esta forma, los archivos predeterminados se eliminarían durante la instalación y se sobrescribirían en una actualización, pero los archivos de usuario reales seguirían siendo los mismos. Desafortunadamente con <CopyFile>
, Windows Installer aún desea administrar (y eliminar) el archivo de destino.
También consideré usar la acción QtExec en WixUtilExtension para básicamente hacer "copy default.cfg reallocation.cfg" pero esto no funcionaría y es un poco hackeo.
¿Cuál es la forma correcta de manejar esto?