2014-09-05 5 views
1

base Dans XML Modifications du fichier, je veux être mis [MYPUBLICPROPERTY1] si cela peut être passé de la teneur en nœud via la ligne de commande par exemple msiexec /i my.msi MYPUBLICPROPERTY1="Foo". Cependant, s'il n'est pas passé en ligne de commande, je veux qu'il soit [INSTALLDIR]Sub\Path.valeur de la propriété dynamique avec InstallShield 2010 et MSI

Toutes les idées pour parvenir à ce résultat?

Répondre

1

Voir si cette réponse clarifie les choses générales relatives à votre question: How can I have a WiX Property default to null?

Quant à vos besoins. Utilisez une action personnalisée après CostFinalize (répertoires résolus) pour définir MYPUBLICPROPERTY1 à [INSTALLDIR] Sub \ Path. Inclure la logique dans l'action personnalisée pour ne pas écraser la propriété si elle est déjà définie par la ligne de commande (il suffit de lire la propriété et vérifier si elle est vide). Laissez la propriété sur la table Property. Je ne suis pas sûr si Installshield l'ajoute automatiquement à la table de propriétés si vous l'utilisez dans XML File Changes. Dans ce cas, l'analyse pour voir si elle a été supplantée par la ligne de commande (ajouter de la valeur factice par défaut dans le tableau de la propriété), et si elle n'a pas, réglez-le sur le répertoire que vous avez besoin d'être. Si ce n'est pas possible, annulez l'installation.

Questions connexes