Question

Je suis en train d'écrire un programme d'installation de Wix et j'ai une exigence suivante:
Lors de l'installation, je dois passer un chemin absolu vers un fichier (permet de l'appeler A) inclus dans mon programme d'installation à un composant COM, qui existe déjà sur le disque dur et fait partie d'un autre programme. Je l'ai déjà écrit un approprié d'action personnalisée qui attend un chemin vers le fichier A. Je ne veux pas d'inclure un fichier comme installé dans le dossier Program Files et supprimé pendant le processus de désinstallation. Au lieu de cela, je voudrais mettre un temporaire sur le disque dur, appeler mon action personnalisée qui provoquera le composant COM pour utiliser le contenu de A, puis retirez A partir du disque. Est-il un moyen facile d'atteindre cet objectif?

J'ai essayé d'utiliser le binaire de table et de stocker une là-bas, mais je ne sais pas comment référencer A l'aide d'un chemin absolu. Je sais que je pourrais mettre un en dehors du fichier MSI mais je voudrais garder tous les fichiers d'installation des besoins dans un seul MSI.

Toute aide serait appréciée.

Était-ce utile?

La solution

Je prendrais cette approche.

Installez le fichier « A » dans un répertoire. Exécutez votre action personnalisée nécessaire pour mettre à jour le composant COM. Ensuite, exécutez une autre action personnalisée ou modifier celui pour supprimer le fichier actuellement écrit après qu'il ne soit plus utilisé. Cela ne laisserait aucune trace du fichier « A » et si vous planifiez l'action personnalisée à exécuter uniquement lors de l'installation vous pas à vous inquiéter à ce sujet lors de la désinstallation.

Autres conseils

Suppression d'un fichier MSI installé signifie que MSI le considéreront « cassé » et essayer de l'auto-réparation si appelé à le faire. Cela se produit automatiquement dans plusieurs cas (par exemple, les raccourcis annoncés et l'enregistrement COM), donc je vous recommande contre. Laissez le fichier à la place il -. Il a fait son travail et il n'y a pas de mal à y laisser

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