我有我的bootstrapper项目,只有在bootstrapper的UI上选择了另一个第三部分msi时我才需要添加一个快捷方式。所以我最终得到了另一个像这样的小msi(删除不相关的数据):
<Wix >
<Product >
<Package />
<MajorUpgrade />
<MediaTemplate />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="FolderName">
</Directory>
</Directory>
</Directory>
<Component Id="ApplicationShortcut" Guid="PUT-GUID-HERE" Directory="ApplicationProgramsFolder">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="App"
Description="desc"
Target='"[ProgramFiles64Folder]Folder1\Folder2\app.exe"'
Arguments=' -n name'
/>
<RemoveFolder Id="RemoveProgramMenuDir" Directory="ApplicationProgramsFolder" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\ACME\App" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
<Feature Id="ProductFeature" Title="Shortcuts" Level="1">
<ComponentRef Id="ApplicationShortcut" />
</Feature>
</Product>
但是我得到了
ICE71: The Media table has no entries.
答案 0 :(得分:0)
由于缺少语言,产品代码等问题,该来源无论如何都无法编译。如果您发布完整的工作示例,那将会有所帮助。修复这些问题并查看 ICE71 后,您基本上需要删除mediatemplate并添加适当的媒体条目,例如(在尖括号中)
Media Id="1" Cabinet="product.cab" EmbedCab="yes"
然后你得到的就是警告LGHT1079 : The cabinet 'product.cab' does not contain any files
。如果此安装不包含任何文件,则可能会安全地忽略此警告。否则,请将文件添加到机柜或将其删除。
答案 1 :(得分:0)
我只是使用在安装MSI时创建快捷方式的转换来扩充第三方MSI。这样你就不必在引导程序中做任何特殊的事情了。