author | herrick |
Thu, 13 Jun 2019 19:32:24 -0400 | |
branch | JDK-8200758-branch |
changeset 57404 | a477b26bf888 |
child 58696 | 61c44899b4eb |
permissions | -rw-r--r-- |
57404
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
1 |
<?xml version="1.0" encoding="utf-8"?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
2 |
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
3 |
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
4 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
5 |
<?ifdef JpIsSystemWide ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
6 |
<?define JpInstallScope="perMachine"?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
7 |
<?define JpRegistryRoot="HKLM"?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
8 |
<?else?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
9 |
<?define JpInstallScope="perUser"?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
10 |
<?define JpRegistryRoot="HKCU"?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
11 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
12 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
13 |
<Product Id="$(var.JpProductCode)" Name="$(var.JpAppName)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
14 |
Language="1033" Version="$(var.JpAppVersion)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
15 |
Manufacturer="$(var.JpAppVendor)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
16 |
UpgradeCode="$(var.JpProductUpgradeCode)"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
17 |
<Package Description="$(var.JpAppDescription)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
18 |
Manufacturer="$(var.JpAppVendor)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
19 |
InstallerVersion="200" Compressed="yes" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
20 |
InstallScope="$(var.JpInstallScope)" Platform="x64"/> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
21 |
<Media Id="1" Cabinet="simple.cab" EmbedCab="yes" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
22 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
23 |
<?ifdef JpAllowDowngrades ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
24 |
<MajorUpgrade AllowDowngrades="yes"/> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
25 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
26 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
27 |
<!-- We use RemoveFolderEx to ensure application folder is fully |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
28 |
removed on uninstall. Including files created outside of MSI |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
29 |
after application had been installed (e.g. on AU or user state). |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
30 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
31 |
However, RemoveFolderEx is only available in WiX 3.6, |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
32 |
we will comment it out if we running older WiX. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
33 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
34 |
RemoveFolderEx requires that we "remember" the path for uninstall. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
35 |
Read the path value and set the APPLICATIONFOLDER property with the value. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
36 |
--> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
37 |
<Property Id="APPLICATIONFOLDER"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
38 |
<RegistrySearch Key="SOFTWARE\$(var.JpAppVendor)\$(var.JpAppName)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
39 |
Root="$(var.JpRegistryRoot)" Type="raw" Win64="yes" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
40 |
Id="APPLICATIONFOLDER_REGSEARCH" Name="Path" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
41 |
</Property> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
42 |
<DirectoryRef Id="APPLICATIONFOLDER"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
43 |
<Component Id="CleanupMainApplicationFolder" Guid="*" Win64="yes"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
44 |
<RegistryValue Root="$(var.JpRegistryRoot)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
45 |
Key="SOFTWARE\$(var.JpAppVendor)\$(var.JpAppName)" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
46 |
Name="Path" Type="string" Value="[APPLICATIONFOLDER]" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
47 |
KeyPath="yes" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
48 |
<!-- We need to use APPLICATIONFOLDER variable here or RemoveFolderEx |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
49 |
will not remove on "install". But only if WiX 3.6 is used. --> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
50 |
<?ifdef JpWixVersion36OrNewer ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
51 |
<util:RemoveFolderEx On="uninstall" Property="APPLICATIONFOLDER" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
52 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
53 |
</Component> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
54 |
</DirectoryRef> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
55 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
56 |
<?include $(var.JpConfigDir)/bundle.wxi ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
57 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
58 |
<?ifdef JpInstallDirChooser ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
59 |
<Binary Id="JpCaDll" SourceFile="wixhelper.dll"/> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
60 |
<CustomAction Id="JpCheckInstallDir" BinaryKey="JpCaDll" DllEntry="CheckInstallDir" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
61 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
62 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
63 |
<UI> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
64 |
<?ifdef JpInstallDirChooser ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
65 |
<Dialog Id="JpInvalidInstallDir" Width="300" Height="85" Title="[ProductName] Setup" NoMinimize="yes"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
66 |
<Control Id="JpInvalidInstallDirYes" Type="PushButton" X="100" Y="55" Width="50" Height="15" Default="no" Cancel="no" Text="Yes"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
67 |
<Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
68 |
</Control> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
69 |
<Control Id="JpInvalidInstallDirNo" Type="PushButton" X="150" Y="55" Width="50" Height="15" Default="yes" Cancel="yes" Text="No"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
70 |
<Publish Event="NewDialog" Value="InstallDirDlg">1</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
71 |
</Control> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
72 |
<Control Id="Text" Type="Text" X="25" Y="15" Width="250" Height="30" TabSkip="no"> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
73 |
<Text>!(loc.message.install.dir.exist)</Text> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
74 |
</Control> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
75 |
</Dialog> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
76 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
77 |
<!-- |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
78 |
Run WixUI_InstallDir dialog in the default install directory. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
79 |
--> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
80 |
<Property Id="WIXUI_INSTALLDIR" Value="APPLICATIONFOLDER"/> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
81 |
<UIRef Id="WixUI_InstallDir" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
82 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
83 |
<Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" Value="JpCheckInstallDir" Order="3">1</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
84 |
<Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="JpInvalidInstallDir" Order="5">INSTALLDIR_VALID="0"</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
85 |
<Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Order="5">INSTALLDIR_VALID="1"</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
86 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
87 |
<?ifndef JpLicenseRtf ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
88 |
<!-- |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
89 |
No license file provided. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
90 |
Override the dialog sequence in built-in dialog set "WixUI_InstallDir" |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
91 |
to exclude license dialog. |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
92 |
--> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
93 |
<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg" Order="2">1</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
94 |
<Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="2">1</Publish> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
95 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
96 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
97 |
<?else?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
98 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
99 |
<?ifdef JpLicenseRtf ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
100 |
<UIRef Id="WixUI_Minimal" /> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
101 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
102 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
103 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
104 |
</UI> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
105 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
106 |
<?ifdef JpLicenseRtf ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
107 |
<WixVariable Id="WixUILicenseRtf" Value="$(var.JpLicenseRtf)"/> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
108 |
<?endif?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
109 |
|
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
110 |
<?include $(var.JpConfigDir)/icons.wxi ?> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
111 |
</Product> |
a477b26bf888
8223643: Provide better defined context for custom installer steps on Windows
herrick
parents:
diff
changeset
|
112 |
</Wix> |