Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: installer/src/msi/adblockplusie.wxs

Issue 5024350814076928: Issue 1103 - Migrate Simple Adblock users
Left Patch Set: Added comments in code Created April 24, 2015, 11:46 a.m.
Right Patch Set: Use registry instead of prefs for storing the Simple Adblock mark Created Aug. 7, 2015, 10:34 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
LEFTRIGHT
1 <?xml version="1.0" encoding="UTF-8"?> 1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- 2 <!--
3 Compilation Note: 3 Compilation Note:
4 You may see linking errors that look like these: 4 You may see linking errors that look like these:
5 <quote>LGHT0217 : Error executing ICE action 'ICExx' [...] The error code is 2738.</quote> 5 <quote>LGHT0217 : Error executing ICE action 'ICExx' [...] The error code is 2738.</quote>
6 The documentation for this error code talks about custom actions, 6 The documentation for this error code talks about custom actions,
7 even though the CustomAction keyword does not appear in this source. 7 even though the CustomAction keyword does not appear in this source.
8 Certain WiX elements are implemented by MSI custom actions, 8 Certain WiX elements are implemented by MSI custom actions,
9 which means this source implicitly declares some insofar as the Windows Inst aller sees it. 9 which means this source implicitly declares some insofar as the Windows Inst aller sees it.
10 These errors are benign and can be avoided by some fiddling with the registry on the development machine. 10 These errors are benign and can be avoided by some fiddling with the registry on the development machine.
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 The default value for @Schedule attribute is afterInstallValidate. 131 The default value for @Schedule attribute is afterInstallValidate.
132 If we used that it would be possible to endup in a state when one 132 If we used that it would be possible to endup in a state when one
133 version is uninstalled and another is not installed. We use 133 version is uninstalled and another is not installed. We use
134 afterInstallInitialize here and not afterInstallExecute since we need to 134 afterInstallInitialize here and not afterInstallExecute since we need to
135 make sure we uninstall SimpleAdblock *before* we install ABP. 135 make sure we uninstall SimpleAdblock *before* we install ABP.
136 SimpleAdblock and ABP for IE are using the same CLSID and SimpleAdblock's 136 SimpleAdblock and ABP for IE are using the same CLSID and SimpleAdblock's
137 uninstallation is running DllUnregisterServer which removes the CLSID 137 uninstallation is running DllUnregisterServer which removes the CLSID
138 from the registry. 138 from the registry.
139 --> 139 -->
140 <MajorUpgrade 140 <MajorUpgrade
141 Schedule="afterInstallInitialize" 141 Schedule="afterInstallInitialize"
Eric 2015/05/17 00:29:25 This change remains a bad idea. It's altering the
Oleksandr 2015/07/13 03:46:16 1. MajorUpgrade already schedules RemoveExistingPr
142 AllowDowngrades="yes" 142 AllowDowngrades="yes"
143 /> 143 />
144 144
145 <!--Remove Simple Adblock--> 145 <!--Remove Simple Adblock-->
146 <Property Id="SIMPLEADBLOCKDETECTED" Secure="yes"/> 146 <Property Id="SIMPLEADBLOCKPRODUCTCODE" Secure="yes"/>
Eric 2015/05/17 00:29:25 The value of this property is set by the 'FindRela
147 <Upgrade Id="27D7C170-67AA-40D9-978F-5F14B4D0FEEE"> 147 <Upgrade Id="27D7C170-67AA-40D9-978F-5F14B4D0FEEE">
148 <UpgradeVersion 148 <UpgradeVersion
149 Minimum="0.7.0.0" Maximum="99.0.0.0" 149 Minimum="0.7.0.0" Maximum="99.0.0.0"
150 Property="SIMPLEADBLOCKDETECTED" 150 Property="SIMPLEADBLOCKPRODUCTCODE"
151 IncludeMinimum="yes" IncludeMaximum="no" IgnoreRemoveFailure="no"/> 151 IncludeMinimum="yes" IncludeMaximum="no" IgnoreRemoveFailure="no"/>
152 </Upgrade> 152 </Upgrade>
153 <MediaTemplate EmbedCab="yes"/> 153 <MediaTemplate EmbedCab="yes"/>
154 154
155 <!-- 155 <!--
156 User interface 156 User interface
157 --> 157 -->
158 <UIRef Id="custom_WixUI_InstallDir"/> 158 <UIRef Id="custom_WixUI_InstallDir"/>
159 <UIRef Id="WixUI_ErrorProgressText"/> 159 <UIRef Id="WixUI_ErrorProgressText"/>
160 <Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER"/> 160 <Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER"/>
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 Directory="APP_DATA_FOLDER" 192 Directory="APP_DATA_FOLDER"
193 ExeCommand="cmd /C &quot;rmdir /s /q &quot;.\Simple Adblock&quot;&quot;" 193 ExeCommand="cmd /C &quot;rmdir /s /q &quot;.\Simple Adblock&quot;&quot;"
194 Execute="deferred" 194 Execute="deferred"
195 Return="ignore" 195 Return="ignore"
196 HideTarget="no" 196 HideTarget="no"
197 Impersonate="no" /> 197 Impersonate="no" />
198 <!-- 198 <!--
199 We require a 32-bit DLL for the 32-bit installer, and likewise for 64-bit. 199 We require a 32-bit DLL for the 32-bit installer, and likewise for 64-bit.
200 The 64-bit Close_IE action needs to examine 64-bit processes on the system , which are invisible to 32-bit processes. 200 The 64-bit Close_IE action needs to examine 64-bit processes on the system , which are invisible to 32-bit processes.
201 --> 201 -->
202 <Binary Id="installer_ca" SourceFile="$(var.installer_dir)\build\$(var.build _dir)\$(var.CA_Configuration)\installer-ca.dll"/> 202 <Binary Id="installer_ca" SourceFile="$(var.installer_dir)\build\$(var.build _dir)\$(var.CA_Configuration)\installer-ca.dll"/>
203 <InstallExecuteSequence> 203 <InstallUISequence>
Eric 2015/05/17 00:29:25 Moving the close-IE action should be done in a sep
sergei 2015/07/28 11:11:54 Actually yes, had someone created an issue for it?
204 <!-- 204 <!--
205 The LaunchConditions action occurs near the beginning, before any of the expensive operations. 205 The LaunchConditions action occurs near the beginning, before any of the expensive operations.
206 --> 206 -->
207 <Custom 207 <Custom
208 Action="Close_IE" 208 Action="Close_IE"
209 After="LaunchConditions" 209 After="LaunchConditions"
210 /> 210 />
211 </InstallUISequence>
211 212
213 <InstallExecuteSequence>
212 <Custom 214 <Custom
213 Action="CleanupSimpleAdblock" 215 Action="CleanupSimpleAdblock"
214 Before="InstallFinalize"><![CDATA[SIMPLEADBLOCKDETECTED <> ""]]></Custom > 216 Before="InstallFinalize"><![CDATA[SIMPLEADBLOCKPRODUCTCODE <> ""]]></Cus tom>
215 </InstallExecuteSequence> 217 </InstallExecuteSequence>
216 218
217 <!-- 219 <!--
218 We have only a single feature, since there aren't any optional parts. 220 We have only a single feature, since there aren't any optional parts.
219 The display is hidden for the same reason; there's nothing to choose from. 221 The display is hidden for the same reason; there's nothing to choose from.
220 --> 222 -->
221 <Feature Id="ProductFeature" 223 <Feature Id="ProductFeature"
222 Title="!(loc.Title)" Description="!(loc.UI_Description)" 224 Title="!(loc.Title)" Description="!(loc.UI_Description)"
223 Display="hidden"> 225 Display="hidden">
224 <ComponentGroupRef Id="Installation_Folders"/> 226 <ComponentGroupRef Id="Installation_Folders"/>
(...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after
836 838
837 The settings.ini file should not be installed this way, since it contains user-generated data. 839 The settings.ini file should not be installed this way, since it contains user-generated data.
838 A component in Windows Installer represents a fixed piece of data with the MSI, not a changing one. 840 A component in Windows Installer represents a fixed piece of data with the MSI, not a changing one.
839 The present method of making settings.ini a component is simply an expedie nt for the present, 841 The present method of making settings.ini a component is simply an expedie nt for the present,
840 not a permanent solution. 842 not a permanent solution.
841 The correct solution requires the application to manage this file; the ins taller can't do it right. 843 The correct solution requires the application to manage this file; the ins taller can't do it right.
842 See http://stackoverflow.com/questions/357911/manage-configuration-files-w ith-wix 844 See http://stackoverflow.com/questions/357911/manage-configuration-files-w ith-wix
843 --> 845 -->
844 <ComponentGroup Id="INI_Files"> 846 <ComponentGroup Id="INI_Files">
845 <ComponentRef Id="ini_settings.ini"/> 847 <ComponentRef Id="ini_settings.ini"/>
846 <ComponentRef Id="simpleAdblockPrefs"/> 848 <ComponentRef Id="simpleAdblockMark"/>
847 </ComponentGroup> 849 </ComponentGroup>
848 <DirectoryRef Id="ABP_APPDATA_FOLDER"> 850 <DirectoryRef Id="ABP_APPDATA_FOLDER">
849 <Directory Id="ini" FileSource="$(var.plugin_dir)\files"> 851 <Directory Id="ini" FileSource="$(var.plugin_dir)\files">
850 <Component Id="ini_settings.ini" Guid="dc30c3b0-d713-11e2-8b8b-0800200c9 a66"> 852 <Component Id="ini_settings.ini" Guid="dc30c3b0-d713-11e2-8b8b-0800200c9 a66">
851 <File Name="settings.ini"/> 853 <File Name="settings.ini"/>
852 </Component> 854 </Component>
853 <Component Id="simpleAdblockPrefs" Guid="cc30c3b0-c713-01e2-7b8b-1800200 c9a65"> 855 <Component Id="simpleAdblockMark" Guid="cc30c3b0-c713-01e2-7b8b-1800200c 9a65">
854 <Condition><![CDATA[SIMPLEADBLOCKDETECTED <> ""]]></Condition> 856 <Condition><![CDATA[SIMPLEADBLOCKPRODUCTCODE <> ""]]></Condition>
855 <File Name="prefs.json"/> 857 <RegistryKey Root="HKCU" Key="Software\Adblock Plus for IE">
858 <RegistryKey Key="ConvertedFrom">
859 <RegistryValue Name="name" Type="string" Value="simpleadblock"/>
860 </RegistryKey>
861 </RegistryKey>
856 </Component> 862 </Component>
857 </Directory> 863 </Directory>
858 </DirectoryRef> 864 </DirectoryRef>
859 865
860 <?include ../installer-lib/custom-i18n.wxi ?> 866 <?include ../installer-lib/custom-i18n.wxi ?>
861 <?include ../custom-action/close_ie.wxi ?> 867 <?include ../custom-action/close_ie.wxi ?>
862 </Product> 868 </Product>
863 </Wix> 869 </Wix>
LEFTRIGHT

Powered by Google App Engine
This is Rietveld