CA-106455: XenCenter Installation: multiple install on same OS when selected installation for all users; Asking for .NET 3.5 while repair or uninstall.

Changed the way we check whether .NET 2.0/.NET 3.5 framework is already
installed on the user machine or not.

Signed-off-by: Adrian Jachacy <Adrian.Jachacy@citrix.com>
This commit is contained in:
Adrian Jachacy 2013-07-01 11:02:01 +01:00
parent 48fedf006f
commit 750bf609d5
4 changed files with 30 additions and 55 deletions

View File

@ -1,36 +1,13 @@
# Copyright (c) Citrix Systems Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms,
# with or without modification, are permitted provided
# that the following conditions are met:
#
# * Redistributions of source code must retain the above
# copyright notice, this list of conditions and the
# following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the
# following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
--- XenCenter.wxs 2013-07-01 10:39:54.447126800 +0100
+++ XenCenter.l10n.wxs 2013-07-01 10:39:51.998882000 +0100
@@ -32,13 +32,12 @@
SUCH DAMAGE.
-->
--- XenCenter.wxs 2012-04-27 15:35:27.662068200 +0100
+++ XenCenter.l10n.wxs 2012-04-27 16:28:00.539817200 +0100
@@ -4,7 +4,7 @@
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
- xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define ProductVersion="1.0.0" ?>
<?define UpgradeCode="{EA0EF50F-5CC6-452B-B09F-3F5EC564899D}"?>
<?define ProductCode="{65AE1345-A520-456D-8A19-2F52D43D3A09}"?>
<Product Id="$(var.ProductCode)" Name="Citrix XenCenter" Language="$(env.WixLangId)" Version="$(var.ProductVersion)" Manufacturer="Citrix Systems, Inc." UpgradeCode="$(var.UpgradeCode)">
@ -39,7 +16,7 @@
<Media Id="1" Cabinet="XenCenter.cab" EmbedCab="yes" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
@@ -54,64 +54,64 @@
@@ -88,64 +87,64 @@
<File Id="XslicIcon" Source="..\XenAdmin\Images\file_license.ico" />
<File Id="XkbIcon" Source="..\XenAdmin\Images\file_backup.ico" />
<File Id="XsupdateIcon" Source="..\XenAdmin\Images\file_updates.ico" />
@ -127,7 +104,7 @@
</Extension>
</ProgId>
</Component>
@@ -130,6 +130,30 @@
@@ -164,6 +163,30 @@
<Component Id="HelpFiles" Guid="EA8D4F56-A94A-467c-9E6B-F3DC26F95B1E">
<File Id="XenCenterCHM" Source="..\XenAdmin\bin\Release\Help\XenCenter.chm" />
<File Id="WLBCHM" Source="..\XenAdmin\bin\Release\Help\WLB.chm" />
@ -158,7 +135,7 @@
</Component>
</Directory>
<Directory Id="EXTERNALTOOLS" ShortName="External" Name="External Tools">
@@ -179,6 +203,8 @@
@@ -213,6 +236,8 @@
<Feature Id="MainProgram" Title="Citrix XenCenter" Description="The complete package" Display="expand" Level="1" ConfigurableDirectory="INSTALLDIR" AllowAdvertise="no" InstallDefault="local" Absent="disallow">
<ComponentRef Id="MainExecutable" />
<ComponentRef Id="HelpFiles" />
@ -167,12 +144,12 @@
<ComponentRef Id="ReportViewer" />
<ComponentRef Id="TestResources" />
<ComponentRef Id="SchemasFilesComponent" />
@@ -195,7 +221,7 @@
</Property>
@@ -227,7 +252,7 @@
<Property Id="ARPPRODUCTICON" Value="XenCenterICO" />
<MajorUpgrade AllowDowngrades="no" AllowSameVersionUpgrades="yes" DowngradeErrorMessage="!(loc.ErrorNewerProduct)" Schedule="afterInstallInitialize"/>
- <Condition Message=".NET Framework 3.5 is required for this installation.">FRAMEWORK35 &gt;= "#1"</Condition>
+ <Condition Message="!(loc.Required_For_Installation)">FRAMEWORK35 &gt;= "#1"</Condition>
<PropertyRef Id="NETFRAMEWORK35" />
- <Condition Message=".NET Framework 3.5 is required for this installation."><![CDATA[Installed OR NETFRAMEWORK35]]></Condition>
+ <Condition Message="!(loc.Required_For_Installation)"><![CDATA[Installed OR NETFRAMEWORK35]]</Condition>
<InstallExecuteSequence>
<AppSearch Sequence="50" />
<FindRelatedProducts Before="LaunchConditions" />

View File

@ -32,7 +32,8 @@
SUCH DAMAGE.
-->
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<?define ProductVersion="1.0.0" ?>
<?define UpgradeCode="{EA0EF50F-5CC6-452B-B09F-3F5EC564899D}"?>
<?define ProductCode="{65AE1345-A520-456D-8A19-2F52D43D3A09}"?>
@ -206,7 +207,7 @@
<Component Id="ApplicationShortcut" Guid="6B875059-26BC-4fa7-ACB7-0B9A4E4665CA">
<Shortcut Id="startmenuXenCenter" ShortName="XenCen50" Name="Citrix XenCenter" Description="XenCenter Shortcut" Target="[INSTALLDIR]XenCenter.exe" WorkingDirectory="INSTALLDIR" Icon="XenCenterICO" />
<RemoveFolder Id="ApplicationProgramsFolder" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\Microsoft\XenCenter" Name="installed" Type="integer" Value="1" KeyPath="yes" />
<RegistryValue Root="HKCU" Key="Software\Citrix\XenCenter" Name="installed" Type="integer" Value="1" KeyPath="yes" />
</Component>
</DirectoryRef>
<Feature Id="MainProgram" Title="Citrix XenCenter" Description="The complete package" Display="expand" Level="1" ConfigurableDirectory="INSTALLDIR" AllowAdvertise="no" InstallDefault="local" Absent="disallow">
@ -223,12 +224,10 @@
<UIRef Id="WixUI_ErrorProgressText" />
<Property Id="Install_All" Value="0" />
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<Property Id="FRAMEWORK35">
<RegistrySearch Id="Framework35Registry" Type="raw" Root="HKLM" Key="Software\Microsoft\NET Framework Setup\NDP\v3.5" Name="Install" />
</Property>
<Property Id="ARPPRODUCTICON" Value="XenCenterICO" />
<MajorUpgrade AllowDowngrades="no" AllowSameVersionUpgrades="yes" DowngradeErrorMessage="!(loc.ErrorNewerProduct)" Schedule="afterInstallInitialize"/>
<Condition Message=".NET Framework 3.5 is required for this installation.">FRAMEWORK35 &gt;= "#1"</Condition>
<PropertyRef Id="NETFRAMEWORK35" />
<Condition Message=".NET Framework 3.5 is required for this installation."><![CDATA[Installed OR NETFRAMEWORK35]]></Condition>
<InstallExecuteSequence>
<AppSearch Sequence="50" />
<FindRelatedProducts Before="LaunchConditions" />

View File

@ -32,7 +32,8 @@
SUCH DAMAGE.
-->
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<?define ProductVersion="1.0.0" ?>
<?define UpgradeCode="{A77AF69F-14AF-4cd0-B978-236945C7AC97}"?>
<?define ProductCode="{0CE5C3E7-E786-467a-80CF-F3EC04D414E4}"?>
@ -86,15 +87,13 @@
</Feature>
<Property Id="Install_All" Value="0" />
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<Property Id="FRAMEWORK20">
<RegistrySearch Id="Framework20Registry" Type="raw" Root="HKLM" Key="Software\Microsoft\NET Framework Setup\NDP\v2.0.50727" Name="Install" />
</Property>
<Property Id="ARPPRODUCTICON" Value="XenCenterICO" />
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Property="UPGRADEFOUND" ExcludeLanguages="yes" Minimum="0.0.0" IncludeMinimum="yes" Maximum="$(var.ProductVersion)" IncludeMaximum="no" />
<UpgradeVersion OnlyDetect="yes" ExcludeLanguages="yes" Property="NEWERPRODUCTFOUND" Minimum="$(var.ProductVersion)" IncludeMinimum="no" />
</Upgrade>
<Condition Message=".NET Framework 2.0 is not present on the computer.">FRAMEWORK20 = "#1"</Condition>
<PropertyRef Id="NETFRAMEWORK20" />
<Condition Message=".NET Framework 2.0 is not present on the computer."><![CDATA[Installed OR NETFRAMEWORK20]]></Condition>
<InstallExecuteSequence>
<AppSearch Sequence="50" />
<FindRelatedProducts Before="LaunchConditions" />

View File

@ -260,9 +260,9 @@ compile_installer()
if [ "${name}" = "VNCControl" ]
then
${LIGHT} obj${name}/$1.wixobj lib/WixUI_InstallDir.wixlib -loc wixlib/wixui_$2.wxl -out out${name}/${name}.msi
${LIGHT} obj${name}/$1.wixobj lib/WixUI_InstallDir.wixlib -loc wixlib/wixui_$2.wxl -ext WiXNetFxExtension -out out${name}/${name}.msi
else
${LIGHT} obj${name}/$1.wixobj lib/WixUI_InstallDir.wixlib -loc wixlib/wixui_$2.wxl -loc $2.wxl -out out${name}/${name}.msi
${LIGHT} obj${name}/$1.wixobj lib/WixUI_InstallDir.wixlib -loc wixlib/wixui_$2.wxl -loc $2.wxl -ext WiXNetFxExtension -out out${name}/${name}.msi
fi
}