Question

I trouvé que Wix v3 utilise un outil (heat.exe) à l'information "récolte" en fragments WiX. Soit je suis à la recherche dans le mauvais endroit, ou bien cela est à peine documenté.

Quelle est la meilleure façon de générer automatiquement un fragment Wix (probablement à l'aide de heat.exe) pour une structure complexe de dossiers contenant des fichiers multimédias:

  • de différents types (ico / .png / XAML / etc)
  • Cela peut changer régulièrement (noms / lieux / ajoute / supprime)
  • qui sont classés comme « contenu » et inclus dans un .csproj

de telle sorte qu'ils peuvent être intégrés dans un programme d'installation via WiX et résisteraient mises à jour et des correctifs avec le décorum?

Informations sur l'arrière-plan

  1. J'ai trouvé heat.exe, qui semble résoudre l'exigence fragment autogenerate WiX
  2. à obtenir le "dir" travail d'abattage, j'ai remarqué la moissonneuse "projet" (aide commandline)
  3. Media est déjà en C # fichier de projet, et ainsi noté que « -pog: contenu » pourrait très bien
  4. recherche rapide a découvert des documents de date Arracheuse ne mentionne pas « projet »
  5. l'ensemble du projet d'installation Réalisés pourrait probablement faire avec Arracheuse « projet », mais ne savait pas à quel point cela a été pris en charge, et quels sont les pièges étaient.
  6. Saw la génération de "PUT-GUID-ICI" et réalisé que l'autoproduction de GUIDs aurait probablement mise à niveau / implications patch.
  7. RÉALISÉ qu'il doit y avoir des gens qui utilisent ces outils à des fins similaires et pourrait probablement me diriger dans la bonne direction.

Il était (assez) fait remarquer que v3 est pas encore « fait » (ainsi la documentation et de scarceness tutoriels). Le sens que je reçois est maintenant qu'il est non trivial d'automatiser dans mes scripts de construction et les outils se développent en ce moment pour faciliter cela.

Était-ce utile?

La solution

Dans mon expérience John Robbins paraffine résout beaucoup de problèmes avec tallow.exe (heat.exe v3). Je ne sais pas si Paraffine joue bien avec v3, mais il pourrait être utile de vérifier.

Pour votre information, je l'ai utilisé dans un Paraffine processus de construction et il m'a permis de supprimer le processus de nettoyage 2-3 étape précédente qui a impliqué un script Powershell.

Autres conseils

Pour les implications de mise à jour des configurations générées automatiquement, lire . Le message à retenir:

  

Windows Installer ne vous laissez pas   supprimer des composants dans une mise à jour mineure

Il est difficile de garantir que les composants continuent d'exister si vous générez votre configuration automatiquement. Par conséquent, vous devez choisir entre la génération automatique de composants et la capacité de faire des mises à niveau mineures.

Si vous avez des composants générés automatiquement, puis juste coller à des améliorations majeures. Vous pouvez utiliser cet échantillon par Rob à titre d'exemple.

Merci pour l'arrière-plan, je ne savais pas qu'ils travaillaient sur une nouvelle version de Wix. Selon la page du projet, il est pas encore RTM, donc qui peut expliquer les problèmes que vous rencontrez. J'espère que d'entendre les développeurs WIX dans l'une des réponses.

Je ne peux pas vous aider à utiliser les fonctionnalités de heat.exe sous-développement. Cependant, je suis dans votre situation et ma solution était de créer un outil qui a des informations de répertoire et le fichier en entrée et génère des fichiers valides du projet Wix en sortie. Un fichier .vsproj est juste un fichier XML, et vous pouvez utiliser XSL, C # 's LINQ, PowerShell, ou un certain nombre d'autres outils pour faire le travail. J'ai personnellement utilisé (pré-LINQ) C # / XMLDOM pour analyser les fichiers de projet VS à cet effet.

Bonne chance,

Dave

Pour la documentation, consultez le fichier d'aide qui est installé Wix -. WiX.chm fournit plus d'informations à jour (ainsi que la ligne de commande option -help)

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