Wix: Как создать ярлык на рабочем столе, указывающий на виртуальный диск в разделе «Компьютер» - PullRequest
2 голосов
/ 28 января 2010

Я хотел бы добавить ярлык на рабочем столе, который указывает на виртуальный диск, смонтированный в разделе «Компьютер». Этот диск не имеет буквы, связанной с ним. Я успешно добавил ссылку на исполняемый файл, но все попытки с Explorer провалились. Когда я добавляю этот ярлык вручную, он получает следующий ярлык (в свойствах): Компьютер \ MyProduct

Я пробовал следующее:

<Component Id="DesktopShortcut" Guid="8EF63340-10D5-4583-9E28-F2EFFA666761">
    <CreateFolder />
    <RegistryKey Root="HKCU" Key="Software\MyProduct\Install" Action="createAndRemoveOnUninstall">
        <RegistryValue Name="DTSC" Value="1" Type="integer" KeyPath="yes" />
    </RegistryKey>
    <Shortcut Id="DesktopShortcut" Directory="DesktopFolder" Name="My Product" Icon="yoobitsIcon" Target="Computer\MyProduct" />
</Component>

Есть идеи?

1 Ответ

0 голосов
/ 04 февраля 2010

Одним из возможных решений является добавление ярлыка в виде файла .lnk и включение его в качестве обычного файла в папку Desktop во время установки.

<Directory Id="DesktopFolder" Name="Desktop">
  <Component Id="MyProductDesktopShortcut" Guid="A47E6BEB-C7D6-4725-A94F-C6C52A55F31C">
    <RegistryKey Root="HKCU" Key="Software\MyProduct\DesktopShortcut" Action="createAndRemoveOnUninstall">
      <RegistryValue Name="DTSC" Value="1" Type="integer" KeyPath="yes" />
    </RegistryKey>
    <File Id="MyProductDesktopShortcutFile" Name="MyProduct.lnk" Source="MyProduct.lnk" DiskId="1" />
  </Component>
</Directory>

Недостаток: Значок зарегистрированв файле .lnk будет неправильным, если приложение будет установлено в другой каталог, чем ожидалось.В этом случае это приведет к появлению значка папки по умолчанию и правильному значку после перехода к этому виртуальному диску.

...