I have a few MSI packages that do not uninstall because a couple of custom 
actions at failing at uninstall. I don't want those custom actions to execute 
so we can "uninstall" these  packages.

Although, now that I think about this a little bit more... the reason the 
custom action fails is that through a series of horrible design decisions 
(improper upgrade implementation, bad versioning, not using ServiceInstall 
table, etc) we ended up with duplicate products in ARP. When one product is 
uninstalled it removes the windows service associated with the product. When 
one of the remaining duplicated products is asked to uninstall it executes the 
custom action that removes the windows service and fails because the windows 
service does not exist.

Anyway, I'm trying to provide an automated cleanup mechanism for our team (they 
don't have VMs) for a few trashed systems (getting really close to just 
reformatting and starting over, maybe I can convince them to use VMs now). I 
think I might be able to provide a script that recreates the pesky windows 
service at the right time... but I will need an executable... I need to think 
some more about this.

Edwin G. Castro
Software Developer - Staff
Electronic Banking Services
Fiserv
Office: 503-746-0643
Fax: 503-617-0291
www.fiserv.com
Please consider the environment before printing this e-mail


> -----Original Message-----
> From: Rob Mensching [mailto:r...@robmensching.com]
> Sent: Monday, January 17, 2011 8:12 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Update InstallExecuteSequence Condition
> Programmatically using DTF
> 
> I'm curious, why do you need to do this?
> 
> On Mon, Jan 17, 2011 at 5:05 PM, Castro, Edwin G. (Hillsboro) <
> edwin.cas...@fiserv.com> wrote:
> 
> > I’d like to write a program using DTF to open up a MSI package and
> > programmatically update some Conditions in the InstallExecuteSequence
> table.
> > This program be used to update MSI packages before installation.
> > Here’s some pseudo code for what I have so far:
> >
> > using (database = new Database(filePath, DatabaseOpenMode.Transact)) {
> >    query = database.Tables["InstallExecuteSequence"].SqlSelectString
> >    using (view = database.OpenView(query))
> >    {
> >        while (record = view.Fetch())
> >        {
> >            try
> >            {
> >                action = record.GetString("Action")
> >                if (action is the action I want)
> >                {
> >                    record.SetString("Condition", "new condition")
> >                }
> >            }
> >            finally
> >            {
> >                record.Close()
> >            }
> >        }
> >    }
> >    database.Commit()
> > }
> >
> > I’m trying to implement this as a PowerShell script so my script
> > doesn’t look exactly like the pseudo code above.
> >
> > Is this going in the correct direction? I have a feeling that this
> > isn’t quite right but I don’t know exactly what the missing piece is.
> >
> > Edwin G. Castro
> > Software Developer - Staff
> > Electronic Banking Services
> > Fiserv
> > Office: 503-746-0643
> > Fax: 503-617-0291
> > www.fiserv.com
> > P Please consider the environment before printing this e-mail
> >
> >
> >
> > ----------------------------------------------------------------------
> > -------- Protect Your Site and Customers from Malware Attacks Learn
> > about various malware tactics and how to avoid them. Understand
> > malware threats, the impact they can have on your business, and how
> > you can protect your company and customers by using code signing.
> > http://p.sf.net/sfu/oracle-sfdevnl
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> 
> 
> 
> --
> virtually, Rob Mensching - http://RobMensching.com LLC
> ------------------------------------------------------------------------------
> Protect Your Site and Customers from Malware Attacks Learn about various
> malware tactics and how to avoid them. Understand malware threats, the
> impact they can have on your business, and how you can protect your
> company and customers by using code signing.
> http://p.sf.net/sfu/oracle-sfdevnl
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to