2016-05-26 1 views
1

Voici le code que j'utilise pour créer un raccourci du menu Démarrer de mon programme à l'aide de WiX Toolset pour créer un programme d'installation pour mon programme. Lorsque j'installe mon programme, je trouve qu'il y a deux éléments de menu créés dans le menu Démarrer. L'un s'appelle "Virtual Disk" et l'autre s'appelle "vdisk.exe". Pourquoi l'installateur WiX fait-il cela? Est-ce parce que c'est le nom du programme dans l'élément Cible? Si tel est le cas, comment puis-je spécifier un nom du raccourci sans le confondre avec le nom de la cible? Je veux seulement un élément de menu dans le menu de démarrage et son nom devrait être le nom que je spécifie sur l'élément de raccourci dans WiX, mais cela ne semble pas fonctionner.Le programme d'installation WiX crée deux éléments de menu dans le menu Démarrer pour un raccourci

+0

Vous devriez montrer plus de votre source. Le composant peut être dans deux entités distinctes, et il se peut que le guid ne soit pas "*". Le fichier MSI contient-il plusieurs entrées dans le tableau des raccourcis et à quel (s) composant (s) se réfèrent-ils? – PhilDW

+0

Le composant est dans deux fonctionnalités, l'une est une sous-fonctionnalité de l'autre, mais quand j'ai changé cela pour que le composant soit dans sa propre fonctionnalité, juste un, il n'a pas changé le résultat, donc je ne Je ne pense pas que ce soit le problème. – user2027440

Répondre

0

J'ai corrigé le problème en suivant l'exemple du tutoriel FireGiant WiX. Cela a fonctionné mais je reçois toujours un message d'avertissement de la lumière quand je construis mon installateur. Le message d'avertissement est

warning LGHT1076: ICE69: Mismatched component reference. 
Entry 'VDiskStartMenuShortcut' of the Shortcut table belongs to 
component 'VDiskShortcut'. However, the formatted string in column 'Target' 
references file 'vdisk.exe' which belongs to component 'vdisk.exe'. 
Components are in the same feature. 

Le résultat est ce que je veux, donc je suppose que je suis prêt à vivre avec le message d'avertissement.

0

Vous voyez deux éléments dans le menu Démarrer car vous installez deux éléments sous ProgramMenuFolder: un exe et un raccourci.

Notez que l'attribut Directory de l'élément Shortcut vous permet d'installer un raccourci vers un emplacement autre que l'emplacement principal de son composant. Donc, une approche pour aborder cela pourrait être de cibler le composant à APPLICATIONROOTDIRECTORY (ou similaire - est-ce MYBIN pour vous?) Au lieu du ApplicationProgramsFolder. Cela installera vdisk.exe sous ProgramFilesFolder au lieu du ProgramMenuFolder afin qu'il n'apparaisse pas dans le menu Démarrer. Puis spécifiez Directory="ApplicationProgramsFolder" sur le raccourci.