The rollback CA executes as per the msi log, but at the wrong time :
Action 13:42:43: Install2.
Action start 13:42:43: Install2.
Install2:
Action ended 13:42:43: Install2. Return value 1.
MSI (s) (C8:EC) [13:42:43:470]: Doing action: CA1.rollback.SetProperty
MSI (s) (C8:EC) [13:42:43:470]: Note: 1: 2205 2: 3: ActionText
Action 13:42:43: CA1.rollback.SetProperty.
Action start 13:42:43: CA1.rollback.SetProperty.
MSI (s) (C8:EC) [13:42:43:470]: PROPERTY CHANGE: Adding
CA1.rollbackproperty. Its value is '/installtype=notransaction
/action=rollback
/LogFile= /solutionCodeGroupName="GridstoneAddin" "C:\Program
Files\Gridstone\Addin\SetSecurity.dll" "C:\Program
Files\Gridstone\Addin\SampleInstaller.dll.config"'.
Action ended 13:42:43: CA1.rollback.SetProperty. Return value 1.
MSI (s) (C8:EC) [13:42:43:470]: Doing action: CA1.rollback
MSI (s) (C8:EC) [13:42:43:470]: Note: 1: 2205 2: 3: ActionText
Action 13:42:43: CA1.rollback.
Action start 13:42:43: CA1.rollback.
CA1.rollback:
Action ended 13:42:43: CA1.rollback. Return value 1.
MSI (s) (C8:EC) [13:42:43:470]: Doing action: CA3.commit.SetProperty
MSI (s) (C8:EC) [13:42:43:470]: Note: 1: 2205 2: 3: ActionText
Action 13:42:43: CA3.commit.SetProperty.
Action start 13:42:43: CA3.commit.SetProperty.
I think the problem is here
<InstallExecuteSequence>
<LaunchConditions After="AppSearch" />
<RemoveExistingProducts After="InstallFinalize" />
<Custom Action="DIRCA_TARGETDIR" After="ValidateProductID">1</Custom>
<Custom Action="CA3.commit.SetProperty" After="CA1.rollback">$MainDLL
>2</Custom>
<Custom Action="CA3.commit" After="CA3.commit.SetProperty">$MainDLL
>2</Custom>
<Custom Action="CA1.rollback.SetProperty" After="Install2">$MainDLL
>2</Custom>
<Custom Action="CA1.rollback" After="CA1.rollback.SetProperty">
$MainDLL>2</Custom>
Rollback is executing after Install. Which should not be the case. It should
execute when I click cancel installation button in my UI – which is
currently as follows :
<Control Type="PushButton" Width="130" Height="17" X="216" Y="68" Id="Cancel
" Text="Cancel this installation">
<Publish Value="Exit" Event="EndDialog">1</Publish>
</Control>
</Dialog>
Thanks,
Nitin.
On 3/23/07, Dana Gutride <[EMAIL PROTECTED]> wrote:
Are they not being executed or are you getting an error in the msi log?
Dana
On 3/23/07, Nitin Chaudhari < [EMAIL PROTECTED]> wrote:
>
> Hi Dana,
> Thanks for the reply, having $TheComponent=2 in my custom action did
> solve the issue. So now the following works.
>
> <
> Custom Action=" CA2.uninstall.SetProperty" After="MsiUnpublishAssemblies
> ">$MainDLL=2</Custom >
>
> <
> Custom Action=" CA2.uninstall" After=" CA2.uninstall.SetProperty">
> $MainDLL=2</Custom >
>
> On similar lines I tried $MainDLL>2 for rollback and commit
> actions... it did not seem to work... any pointers to related
> documentation.
>
> My current install sequence is as follows :
>
> <InstallExecuteSequence>
> <LaunchConditions After="AppSearch" />
> <RemoveExistingProducts After="InstallFinalize" />
>
> <Custom Action="DIRCA_TARGETDIR"
> After="ValidateProductID">1</Custom>
>
> <Custom Action="CA3.commit.SetProperty" After="CA1.rollback
> ">$MainDLL>2</Custom>
> <Custom Action="CA3.commit"
After="CA3.commit.SetProperty">$MainDLL>2</Custom>
>
> <Custom Action="CA1.rollback.SetProperty"
> After="Install2">$MainDLL>2</Custom>
> <Custom Action="CA1.rollback"
After="CA1.rollback.SetProperty">$MainDLL>2</Custom>
>
>
> <Custom Action="InstallSetProp"
> After="StartServices">$HelperLibrary>2</Custom>
> <Custom Action="Install"
> After="InstallSetProp">$HelperLibrary>2</Custom>
>
> <Custom Action="Install2SetProp"
> After="Install">$MainDLL>2</Custom>
> <Custom Action="Install2"
> After="Install2SetProp">$MainDLL>2</Custom>
>
> <Custom Action="CA2.uninstall.SetProperty"
> After="MsiUnpublishAssemblies">$MainDLL=2</Custom>
> <Custom Action="CA2.uninstall"
After="CA2.uninstall.SetProperty">$MainDLL=2</Custom>
>
> <Custom Action="GEN_XLS_PATH" After="LaunchConditions"/>
> </InstallExecuteSequence>
>
> Thanks,
> Nitin
>
> On 3/23/07, Dana Gutride < [EMAIL PROTECTED]> wrote:
>
> > It might be a good idea to schedule this based on the state of the
> > component or feature. That way you can tie the custom action's execution to
> > whether or not the specific component is being installed/uninstalled based
> > on that state.
> >
> > $TheComponent=2 (component is being uninstalled)
> > $TheComponent>2 (component is being installed)
> >
> > Read here for more info:
> >
> >
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/conditional_statement_syntax.asp
> >
> > Dana
> >
> >
> > On 3/22/07, Chris Bardon < [EMAIL PROTECTED]> wrote:
> >
> > > Have you tried something like this:
> > >
> > > <InstallExecuteSequence>
> > > <Custom Action="CA2.uninstall.SetProperty"
> > > After="MsiUnpublishAssemblies">INSTALLED</Custom>
> > > </InstallExecuteSequence>
> > >
> > > This should execute the action only if the product is installed.
> > >
> > > ________________________________
> > >
> > > From: [EMAIL PROTECTED]
> > > [mailto: [EMAIL PROTECTED] ] On Behalf Of
> > > Nitin
> > > Chaudhari
> > > Sent: Thursday, March 22, 2007 9:37 AM
> > > To: wix-users@lists.sourceforge.net
> > > Subject: [WiX-users] wix, C# installer class, uninstall
> > >
> > >
> > > I am using a C# installer class, during installation, I am able to
> > > call
> > > my C# install function, however I am not able hook uninstall in wix
> > > to
> > > call my C# uninstall function.
> > >
> > > In Wix, I am using the following XML to hook uninstall... but the
> > > MSI
> > > log shows that this custom action is being invoked during
> > > installation
> > > itself.
> > > <Custom Action=" CA2.uninstall.SetProperty"
> > > After="MsiUnpublishAssemblies">1</Custom>
> > >
> > > <Custom Action=" CA2.uninstall"
> > > After="CA2.uninstall.SetProperty">1</Custom>
> > >
> > > How can I ensure that my custom action is executed only on
> > > uninstall?
> > >
> > > Thanks,
> > >
> > > Nitin
> > >
> > >
> > > -------------------------------------------------------------------------
> > >
> > > Take Surveys. Earn Cash. Influence the Future of IT
> > > Join SourceForge.net's Techsay panel and you'll get the chance to
> > > share your
> > > opinions on IT & business topics through brief surveys-and earn cash
> > >
> > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> > >
> >
> >
> >
> > -------------------------------------------------------------------------
> > Take Surveys. Earn Cash. Influence the Future of IT
> > Join SourceForge.net's Techsay panel and you'll get the chance to
> > share your
> > opinions on IT & business topics through brief surveys-and earn cash
> >
> > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
>
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users