Question

J'ai un fichier .ini avec configuration.J'ai besoin de vérifier si cela existe dans une nouvelle installation pour éviter de la reprendre.Outre si les nouveaux .ini ont de nouveaux champs, ajoutez au fichier existant.

Était-ce utile?

La solution

Ne pas installer un fichier INI en tant que fichier, mais convertissez les entrées en entrées de table d'inifile . Cela permet à toutes les modifications de fichier INI d'être traitées comme des "unités de changement atomique" qui permettent une fusion et une rétablissement appropriées via un mécanisme MSI intégré. vous évitez toute complexité d'action personnalisée.

Comme Chris pointe dans son commentaire majeur de mise à niveau: Faites les choses correctement dans Wix / MSI et vous évitez de nombreux problèmes qui commencent à apparaître lorsque les exigences changent ou les mises à jour sont compliquées. Les mises à jour de l'inifile mises en œuvre la bonne voie sont robustes et simples à traiter.

in Wix Vous utilisez le Élément inifile pour y parvenir. Toutes les capacités de fusion, la prise en charge de la restauration et la manipulation de fichiers ini avancée sont gratuites. Tout ce que vous avez à faire est de définir ce qui doit être ajouté ou modifié dans le fichier INI lors de votre installation. Il sera également créé si ce n'est pas là en premier lieu.

L'utilisation de l'élément d'inifile peut sembler plus difficile que ce soit. Voici un échantillon . Vous pouvez également consulter le Tutoriel Wix bien connu ici .

Tous les MSI-Experts continuent à répéter cet avis: N'utilisez jamais une action personnalisée pour modifier un système s'il existe des constructions MSI intégrées équivalentes.

Autres conseils

Set Sailverwrite="Oui" sur le composant du fichier .ini, puis gérez la mise à jour via une action personnalisée.

EDIT : Généralement, il est bien préférable d'utiliser la table inifile comme expliqué dans ma réponse puisque vous obtenez Rollback et Fusionner Capacités . Cependant, certaines personnes préfèrent le fichier INI installé comme un fichier sur permettre une modification facile du fichier de l'extérieur du fichier MSI . Bien que non préféré, cela permet aux personnes de "hotfix" du fichier INI directement sur l'emplacement du support d'installation. Les équipes peuvent utiliser ceci pour que le programme d'installation prend la dernière ini du développement. Il existe des problèmes techniques qui peuvent être traités via une action personnalisée (les problèmes de remplacement de fichiers de manière significative sur l'installation). Il est également possible qu'un fichier INI puisse comporter éléments non standard et formatage qui ne correspond pas à la table d'inifile (rare, mais possible - les personnes ayant le sens, utilisent ensuite une extension de fichier différente de celle de l'INI) . Comme déjà expliqué, je conseillerais fortement à la mise à jour des fichiers INI via votre propre action personnalisée, à moins que vous fassiez quelque chose de très spécial - c'est effectivement nécessaire. Il est compliqué de mettre en œuvre et d'avoir raison.

Je suggérerais d'avoir 2 fichiers INI.Celui que l'installateur est propriétaire et celui que l'application / l'utilisateur possède.L'installateur peut toujours écraser son fichier ini et ne jamais vous inquiéter de la piétinement sur les données utilisateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top