【发布时间】:2020-02-20 22:21:22
【问题描述】:
我正在为 Windows 上的 WPF 应用程序创建 WiX 安装程序。我的目标是允许没有管理员权限的用户安装此程序,但在安装程序中,默认路径当前设置为 Program Files,这会导致访问被拒绝错误。
最佳做法是什么,每个用户安装中的默认安装路径应该是什么? %LOCALAPPDATA%可以吗?
【问题讨论】:
标签: windows wix windows-installer
我正在为 Windows 上的 WPF 应用程序创建 WiX 安装程序。我的目标是允许没有管理员权限的用户安装此程序,但在安装程序中,默认路径当前设置为 Program Files,这会导致访问被拒绝错误。
最佳做法是什么,每个用户安装中的默认安装路径应该是什么? %LOCALAPPDATA%可以吗?
【问题讨论】:
标签: windows wix windows-installer
您所有的Component 或ComponentGroup 都属于一个目录
字典.wxs
<Directory Id="LocalAppDataFolder">
<Directory Id="LocalAppDataManufacturerFolder" Name="$(var.Manufacturer)">
<Directory Id="LocalAppDataProductDatabaseFolder" Name="$(var.ProductName)" />
</Directory>
</Directory>
<Directory Id="AppDataFolder">
<Directory Id="AppDataManufacturerFolder" Name="$(var.Manufacturer)">
<Directory Id="AppDataProductDatabaseFolder" Name="$(var.ProductName)" />
</Directory>
</Directory>
产品.wxs
<?include .\Dictionary.wxi ?>
...
<ComponentGroup Id="MyCoreComponent" Directory="AppDataProductDatabaseFolder">
...
Manufacturer 和 Productname 只是变量,您也可以使用硬编码字符串
【讨论】:
WIX_UI UiRef 可以看看<Property Id="WIXUI_INSTALLDIR" Value="AppDataProductDatabaseFolder" />