Есть два ответа на Create shortcut to desktop using WiXWiX Правильное создание ярлыка на рабочем столе
Оба эти ответы не имеют никакого реального объяснения того, что происходит. В чем разница между этими двумя методами создания ярлыков? Первый метод соответствует документации WiX - Create shortcut.
У второго метода есть MergeRedirectFolder
, на котором я не могу найти документацию, и я не понимаю, почему второй пример не требует установки реестра, поскольку согласно документации WiX, параметр реестра:
требуется, поскольку ярлык не может служить в качестве ключа для компонента при установке неактивных ярлыков для текущих пользователей.
Означает ли это, что второй метод - это рекламируемый ярлык? Или это ответ, который предполагает, что пользователь устанавливает на машину? Или я потерял в соусе? (Вполне возможно, - второй день пытаются использовать WiX, поскольку Microsoft заставила меня по этому пути.)
Первый:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder" Name="Desktop">
<Component Id="ApplicationShortcutDesktop" Guid="*">
<Shortcut Id="ApplicationDesktopShortcut"
Name="Text under your icon"
Description="Comment field in your shortcut"
Target="[MYAPPDIRPROPERTY]MyApp.exe"
WorkingDirectory="MYAPPDIRPROPERTY"/>
<RemoveFolder Id="DesktopFolder" On="uninstall"/>
<RegistryValue
Root="HKCU"
Key="Software/MyAppName"
Name="installed"
Type="integer"
Value="1"
KeyPath="yes"/>
</Component>
</Directory>
<Directory Id="ProgramFilesFolder" Name="PFiles">
<Directory Id="MyCompany" Name="MyCompany">
<Directory Id="MYAPPDIRPROPERTY" Name="MyAppName">
</Directory>
</Directory>
</Directory>
Второй:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder" SourceName="Desktop" />
<Directory Id="MergeRedirectFolder">
<Component Id="MyExeComponent" Guid="*">
<File Id="MyExeFile" Source="$(var.ExeSourcePath)" KeyPath="yes">
<Shortcut
Id="DesktopShortcut"
Directory="DesktopFolder"
Name="$(var.ShortcutName)"
WorkingDirectory="MergeRedirectFolder" />
</File>
</Component>
</Directory>
</Directory>
Документация для WiX предлагает первый метод. http://wixtoolset.org/documentation/manual/v3/howtos/files_and_registry/create_start_menu_shortcut.html Я не знаю, если это скидки второй или нет. –
@PeterRitchie Вот ссылка, которую я опубликовал в вопросе. Но да, я согласен, что в документации предлагается первый метод. И пришел к тому же пункту, что и ваше второе заявление. – teynon
Я бы доверял документации над тем, что я прочитал в stackoverflow. –