Создание каталогов
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramMenuFolder">
<Directory Id="ShortcutFolder" Name="My app">
</Directory>
</Directory>
<Directory Id="ProgramFilesFolder">
<Directory Id="My Company" Name="My Company">
<Directory Id="INSTALLDIR" Name="My product">
</Directory>
</Directory>
</Directory>
</Directory>
Вы можете вкладывать теги Каталога по своему усмотрению, а после этого использовать DirectoryRef для вывода списка компонентов, которые входят в этот каталог.
Добавление настраиваемого диалогового окна пользовательского интерфейса с помощью обзоракнопка
Вы можете определить UIRef с помощью WixUI_InstallDir где-то в Фрагмент , Включить ,или Модуль (не в Product , несмотря на документацию):
<UIRef Id="WixUI_InstallDir" />
Это создаст пакет, использующий интерфейс InstallDir, например, целевой каталог можетбыть указан в пользовательском интерфейсе (если вы имеете в виду это, в противном случае вам нужно будет определить новый диалог с нуля / скопировать существующий и вставить его в последовательность.)
Добавление записей реестра
Укажите что-то вроде
<RegistryKey Action="none" Root="HKCU" Key="some key">
<RegistryValue Value="some value" Type="string" KeyPath="yes" />
</RegistryKey>
внутри компонента.
Создание ярлыков на рабочем столе и меню Пуск
<DirectoryRef Id="ShortcutFolder">
<Component Id="ShortcutsComponent" Guid="{XXXX}">
<CreateFolder Directory="ShortcutFolder" />
<RemoveFolder Id="RemoveShorcutFolder" Directory="ShortcutFolder" On="uninstall" />
<Shortcut Id="UninstallProduct"
Name="Uninstall my product"
Target="[System64Folder]msiexec.exe"
Arguments="/x [ProductCode]"
Directory="ShortcutFolder"
Description="Uninstalls my product"/>
</Component>
</DirectoryRef>
Обратите внимание на использование каталога ShortcutFolder из каталога.список, который я показал ранее.
Включая зависимости
Не совсем уверен, какие зависимости вы имеете в виду.
.NET Framework?Пример:
<Condition Message="This setup requires the .NET Framework 3.5 or later to be installed.">
Installed OR NETFRAMEWORK35 OR NETFRAMEWORK40FULL
</Condition>
Сторонние DLL?Вы просто создаете отдельный компонент для каждой библиотеки DLL и указываете путь, по которому WiX должен его искать, используя тег File
.Этот компонент затем отображается в теге DirectoryRef
, который указывает, куда файл попадает во время установки.