* refact: msi, more install options Signed-off-by: fufesou <linlong1266@gmail.com> * refact: msi, reg values on upgrade/modify Signed-off-by: fufesou <linlong1266@gmail.com> * fix: msi, silent repair/upgrade, RemoveInstallFolder() Signed-off-by: fufesou <linlong1266@gmail.com> * Options support both 1/0 and Y/N Signed-off-by: fufesou <linlong1266@gmail.com> * refact: msi, preprocess, open file with explicit encoding Signed-off-by: fufesou <linlong1266@gmail.com> * fix: msi, read previous options Signed-off-by: fufesou <linlong1266@gmail.com> * fix: mis, install folder, read previous option Signed-off-by: fufesou <linlong1266@gmail.com> * Comment on Control -> Checkbox Signed-off-by: fufesou <linlong1266@gmail.com> * fix: UI, checkbox options, read previous values Signed-off-by: fufesou <linlong1266@gmail.com> * fix: shortcuts options, init state Signed-off-by: fufesou <linlong1266@gmail.com> * fix: shortcuts, init state Signed-off-by: fufesou <linlong1266@gmail.com> * Better shortcuts property conditions Signed-off-by: fufesou <linlong1266@gmail.com> --------- Signed-off-by: fufesou <linlong1266@gmail.com>
39 lines
2.0 KiB
XML
39 lines
2.0 KiB
XML
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
|
|
xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
|
|
<?include ../Includes.wxi?>
|
|
|
|
<Fragment>
|
|
<!-- For compatibility with command line values from previous versions -->
|
|
<Property Id="INSTALLFOLDER" Secure="yes">
|
|
<RegistrySearch Id="InstallFolderSearch" Root="HKCR" Key="$(var.RegKeyRoot)" Name="INSTALLFOLDER" Type="raw" />
|
|
</Property>
|
|
|
|
<!-- If a property value has been passed via the command line (which includes when set from the bundle), the registry search will
|
|
overwrite the command line value, these actions temporarily store the command line value before the registry search
|
|
is performed so they can be restored after the registry search is complete -->
|
|
<SetProperty Id="SavedInstallFolderCmdLineValue" Value="[INSTALLFOLDER]" Before="AppSearch" Sequence="first" Condition="INSTALLFOLDER" />
|
|
|
|
<!-- If a command line value was stored, restore it after the registry search has been performed -->
|
|
<SetProperty Action="RestoreSavedInstallFolderValue" Id="INSTALLFOLDER" Value="[SavedInstallFolderCmdLineValue]" After="AppSearch" Sequence="first" Condition="SavedInstallFolderCmdLineValue" />
|
|
|
|
<!-- If a command line value or registry value was set, update the main properties with the value -->
|
|
<SetProperty Id="INSTALLFOLDER_INNER" Value="[INSTALLFOLDER]" After="RestoreSavedInstallFolderValue" Sequence="first" Condition="INSTALLFOLDER" />
|
|
|
|
<!-- INSTALLFOLDER_INNER is defined for compatibility with previous versions of the installer. -->
|
|
<!-- Because we need to use INSTALLFOLDER as the command line argument. -->
|
|
<StandardDirectory Id="ProgramFiles6432Folder">
|
|
<Directory Id="INSTALLFOLDER_INNER" Name="$(var.Product)" />
|
|
</StandardDirectory>
|
|
|
|
<StandardDirectory Id="CommonAppDataFolder">
|
|
<Directory Id="App.Data.Folder" Name="$(var.Product)" />
|
|
</StandardDirectory>
|
|
|
|
<StandardDirectory Id="ProgramMenuFolder">
|
|
<Directory Id="App.StartMenu" Name="$(var.Product)" />
|
|
</StandardDirectory>
|
|
|
|
<StandardDirectory Id="DesktopFolder" />
|
|
</Fragment>
|
|
</Wix>
|