Hello,
Basically I have a component group in my installer that will not get
installed when doing an upgrade. Now we have found that the upgrade only
doesn't work when we upgrade from a version that didn't previously contain
these components. In our example the initial install is version 5.0 and the new
install that contains these new components is version 5.2. This basically cause
the whole install to fail as we have a custom action requiring this component
group set to fire of on a repair or upgrade and so the installer fails because
the exe hasn't been installed. After looking at our svn logs the only change
that was made was we added a new custom action to the install. Below is the
code for the failing compoenents: Also if I look in the install log I see :
MSI (s) (E0:AC) [08:46:04:024]: Skipping action: RunECUDuringInstall (condition
is false)
MSI (s) (E0:AC) [08:46:04:024]: Doing action: RunECUDuringRepair
Action 8:46:04: RunECUDuringRepair.
Action start 8:46:04: RunECUDuringRepair.
MSI (s) (E0:AC) [08:46:04:026]: Note: 1: 2753 2: ECU.exe
RunECUDuringRepair:
Action ended 8:46:04: RunECUDuringRepair. Return value 1.
MSI (s) (E0:AC) [08:46:04:028]: Doing action: InstallFinalize
Action 8:46:04: InstallFinalize.
Action start 8:46:04: InstallFinalize.
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment Id="productECU">
<DirectoryRef Id="Util">
<Component
Id="ECU.exe"
Guid="{D93B0A57-CC88-4012-B197-830D7A9E5902}"
MultiInstance="yes">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Source="configuration\ECU\ECU\bin\ECU.exe"
KeyPath="yes" Vital="yes" >
<Shortcut Id="ECUShortcut"
Name="ECU"
WorkingDirectory="Util"
Description="ECU Product Configuration"
Directory="InstanceShortcutFolder"
Arguments='/productId="pid"
/ProductName="!(loc.ProductName)" /instance="[INSTANCENAME]"
/InstallDir="[INSTALLLOCATION]product"'
/>
</File>
</Component>
<Component
Id="ECUDL.dll.Component"
Guid="{575D49DF-9C81-4797-8645-26C3255BDDDE}"
MultiInstance="yes">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Id="ECUDL.dll.File"
Source="configuration\ECU\ECU\bin\ECUDL.dll"
/>
</Component>
<Component
Id="MvvmFoundation.Wpf.dll.Component"
Guid="{E3859DEE-E163-4A11-8DD5-2DA6AE4B0837}"
MultiInstance="yes">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Id="MvvmFoundation.Wpf.dll.File"
Source="configuration\ECU\ECU\bin\MvvmFoundation.Wpf.dll" />
</Component>
<Component
Id="company.Sdk.dll.Component"
Guid="{03AABCF1-B5D0-4B84-8308-7F6AA4E1D997}"
MultiInstance="yes"
KeyPath="yes">
<File Id="company.Sdk.dll.File"
Source="configuration\ECU\ECU\bin\DuckCreek.Sdk.dll"/>
</Component>
<!--<Component Id="Win32Security.dll.Component">
<Condition>CONFIGAPP="ECU"</Condition>
<File
Id="Win32Security.dll.file"
Source="configuration\ECU\ECU\bin\Release\Win32Security.dll"/>
</Component>-->
<Component Id="NLog.dll.Component">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Id="NLog.dll.file"
Source="configuration\ECU\ECU\bin\NLog.dll"/>
</Component>
<Component Id="NLog.xml.Component">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Id="NLog.xmll.file"
Source="configuration\ECU\ECU\bin\NLog.xml"/>
</Component>
<Component Id="NLog.config.Component">
<!--<Condition>CONFIGAPP="ECU"</Condition>-->
<File
Id="NLog.config.file"
Source="configuration\ECU\ECU\bin\NLog.config"
/>
</Component>
</DirectoryRef>
<!--<DirectoryRef Id="Profiles">
<Component Id="web.config.template.component">
<File Id="web.config.template.file"
Source="configuration\ECU\ECU\bin\Release\Profiles\product\web.config.template"/>
</Component>
</DirectoryRef>-->
<ComponentGroup Id="ECU">
<ComponentRef Id="ECU.exe"/>
<ComponentRef Id="ECUDL.dll.Component"/>
<ComponentRef Id="MvvmFoundation.Wpf.dll.Component"/>
<ComponentRef Id="company.Sdk.dll.Component"/>
<!--<ComponentRef Id="Win32Security.dll.Component"/>-->
<ComponentRef Id="NLog.dll.Component"/>
<ComponentRef Id="NLog.xml.Component"/>
<ComponentRef Id="NLog.config.Component"/>
<!--<ComponentRef Id="web.config.template.component"/>-->
</ComponentGroup>
<CustomAction
Id="RunECUDuringInstall"
ExeCommand='"[#ECU.exe]" /productId=pid
/instance="[INSTANCENAME]" /ProductName="!(loc.ProductName)"
/InstallDir="[INSTALLLOCATION]product" /LaunchFrom=msi '
Directory="Util"
Impersonate="yes"
Execute="deferred"
Return="check" />
<CustomAction
Id="RunECUDuringRepair"
ExeCommand='"[#ECU.exe]" /productId=pid
/instance="[INSTANCENAME]" /ProductName="!(loc.ProductName)"
/InstallDir="[INSTALLLOCATION]product" /LaunchFrom=msi '
Directory="Util"
Impersonate="yes"
Execute="deferred"
Return="check" />
<CustomAction Id="RunECUWithProfile"
ExeCommand='"[#ECU.exe]" /silent /applyProfile="[PROFILE]"
/productId=pid /instance="[INSTANCENAME]" /ProductName="!(loc.ProductName)"
/InstallDir="[INSTALLLOCATION]product"'
Impersonate="yes"
Execute="deferred"
Directory="Util"
Return="check"/>
<CustomAction Id="RunECUDuringUninstall"
ExeCommand='"[#ECU.exe]" /productId=pid
/ProductName="!(loc.ProductName)" /instance="[INSTANCENAME]"
/InstallDir="[INSTALLLOCATION]product" /ProductCode="[ProductCode]"
/uninstall=[UNINSTALLOPTIONS]'
Impersonate="yes"
Execute="deferred"
Directory="Util"
Return="check"/>
<CustomAction Id="RunECUUninstallSilent"
ExeCommand='"[#ECU.exe]" /silent /productId=pid
/instance="[INSTANCENAME]" /ProductName="!(loc.ProductName)"
/InstallDir="[INSTALLLOCATION]product" /ProductCode="[ProductCode]"
/uninstall=[UNINSTALLOPTIONS]'
Impersonate="yes"
Execute="deferred"
Directory="Util"
Return="ignore"/>
<CustomAction Id="RunECUUninstallSilentExportProfiles"
ExeCommand='"[#ECU.exe]" /silent /productId=pid
/instance="[INSTANCENAME]" /ProductName="!(loc.ProductName)"
/InstallDir="[INSTALLLOCATION]product" /ProductCode="[ProductCode]"
/uninstall=[UNINSTALLOPTIONS] /export=[EXPORTOPTIONS]'
Impersonate="yes"
Execute="deferred"
Directory="Util"
Return="ignore"/>
<InstallExecuteSequence>
<Custom Action="SchedXmlFile" After="InstallFiles"
>1</Custom>
<!--After="WriteRegistryValues">-->
<!--After="CreateShortcuts">-->
<Custom
Action="RunECUDuringInstall"
After="PublishProduct">
(NOT REMOVE) AND <!--Do NOT run on
uninstall.-->
(NOT (UILevel=2)) AND <!--Do NOT run on
silent install.-->
(NOT Installed)
</Custom>
<Custom
Action="RunECUDuringRepair"
After="PublishProduct">
(NOT REMOVE) AND <!--Do NOT run on
uninstall.-->
(NOT (UILevel=2)) AND <!--Do NOT run on
silent install.-->
(Installed)
</Custom>
<Custom
Action="RunECUWithProfile"
After="SchedXmlFile">
(NOT REMOVE) AND <!--Do NOT run on
uninstall.-->
(UILevel=2) AND <!-- run on silent
install.-->
(PROFILE) AND
(NOT Installed)
</Custom>
<!--After="MsiUnpublishAssemblies">-->
<Custom
Action="RunECUDuringUninstall"
After="MsiUnpublishAssemblies">
(NOT UPGRADINGPRODUCTCODE) AND
(REMOVE="ALL") AND
(NOT (UILevel=2))
</Custom>
<Custom
Action="RunECUUninstallSilent"
After="MsiUnpublishAssemblies">
(NOT UPGRADINGPRODUCTCODE) AND
(REMOVE="ALL") AND
(UILevel=2)
</Custom>
<Custom
Action="RunECUUninstallSilentExportProfiles"
After="MsiUnpublishAssemblies">
(NOT UPGRADINGPRODUCTCODE) AND
(REMOVE="ALL") AND
(UILevel=2) AND
(EXPORTOPTIONS)
</Custom>
</InstallExecuteSequence>
</Fragment>
</Wix>
Tyler Reid | Operations and Infrastructure | Accenture Software | P&C Insurance
1807 Jones Street | Bolivar, MO 65613| USA
Office: +cc.xxx.xxx.xxxx | Fax: 417.777.3792
E-Mail: [email protected]<mailto:[email protected]> |
www.accenture.com/pcsoftware<http://www.accenture.com/pcsoftware>
________________________________
This message is for the designated recipient only and may contain privileged,
proprietary, or otherwise confidential information. If you have received it in
error, please notify the sender immediately and delete the original. Any other
use of the e-mail by you is prohibited.
Where allowed by local law, electronic communications with Accenture and its
affiliates, including e-mail and instant messaging (including content), may be
scanned by our systems for the purposes of information security and assessment
of internal compliance with Accenture policy.
______________________________________________________________________________________
www.accenture.com
------------------------------------------------------------------------------
Own the Future-Intel(R) Level Up Game Demo Contest 2013
Rise to greatness in Intel's independent game demo contest. Compete
for recognition, cash, and the chance to get your game on Steam.
$5K grand prize plus 10 genre and skill prizes. Submit your demo
by 6/6/13. http://altfarm.mediaplex.com/ad/ck/12124-176961-30367-2
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users