Я использую heat.exe для создания фрагментов, подобных этому:
<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>
Эти фрагменты хранятся в автоматически сгенерированном файле wxs.
Затем я добавляю их в свою функцию (в основном файле WiX) следующим образом:
<ComponentGroupRef Id="Components"/>
Это отлично работает.
Однако я также хотел бы добавить ярлык для Bar.exe в мое меню «Пуск».
В идеале я хочу сделать это в моем основном файле wix, так как компонент Bar.exe все еще находится в автоматически сгенерированном файле wxs.
Как бы я подошел к этой проблеме без изменения автоматически сгенерированного кода?