Ajout raccourci pour le fichier WiX dans un fragment différent
Question
J'utilise heat.exe pour générer des fragments similaires à ceci:
<Fragment>
<DirectoryRef Id="INSTALLDIR">
<Component Id="id1" Guid="*">
<File Id="fid1" KeyPath="yes" Source="SourceDir\Foo1.dll" />
</Component>
<Component Id="id2" Guid="*">
<File Id="fid2" KeyPath="yes" Source="SourceDir\Foo2.dll" />
</Component>
<Component Id="id3" Guid="*">
<File Id="fid3" KeyPath="yes" Source="SourceDir\Bar.exe" />
</Component>
</DirectoryRef>
</Fragment>
<Fragment>
<ComponentGroup Id="Components">
<ComponentRef Id="id1" />
<ComponentRef Id="id2" />
<ComponentRef Id="id3" />
</ComponentGroup>
</Fragment>
Ces fragments sont stockés dans le fichier wxs généré automatiquement.
Je puis les ajouter dans ma fonction (dans le fichier principal de WiX) comme ceci:
<ComponentGroupRef Id="Components"/>
Cela fonctionne très bien.
Cependant, je voudrais aussi ajouter un raccourci vers Bar.exe à mon menu de démarrage. Je veux idéalement le faire dans mon fichier Wix, avec le composant Bar.exe résidant encore dans le fichier wxs généré automatiquement. Comment pourrais-je aborder ce problème sans modifier le code généré automatiquement?
La solution
Voulez-vous nécessairement résider dans la définition? Vous pouvez avoir dans un composant séparé, la façon dont il est démontré dans le manuel: http: //wix.sourceforge.net/manual-wix3/create_start_menu_shortcut.htm
Dans le cas contraire, vous devriez probablement transformer la production de chaleur transformée avec le XSL en ajoutant la définition là. Heat.exe accepte le passage à appliquer juste après transformation XSL récolte.
Hope this helps.