[wix-users] MSI database update at install time

Edwin Castro egcastr at gmail.com
Thu Nov 12 10:16:28 PST 2015


I wrote MSIs 3-4 years ago that installed web services on IIS and we
managed app pool user accounts directly with the IIS extension and
properties. That was a long time ago but I don't remember having trouble.
Out of curiosity, would you mind explaining the issues you're running into
in more detail?

--
Edwin G. Castro


On Thu, Nov 12, 2015 at 9:06 AM, Stephen Woolhead <stephen at perfectphase.com>
wrote:

>
> Thanks everyone for the advice.
>
> It's weird that my attempts to delete rows don't fail, I only get the
> errors on inserts after deletes.
>
> I'm going to switch over to having my custom action create the rows I need
> rather than trying to patch the existing ones.
>
> As to the reason why I want to do this, it mainly relates to creating IIS
> app pools, and the user accounts they run under.  The the issue I have is
> that the IIS extension does not easily map the combination of identity type
> and user into a format in the MSI DB that lends it's self to properties, so
> I was trying to fix up the identity at install time via a custom action.
>  I'll add that we have a solution at the moment that covers the differences
> using conditions, but this is very verbose in the .wxs files and given the
> scale of our solution this is starting to lead to maintainability issues,
> so we want to codify some of these 'hacks' to make it easier to maintain.
>
> Cheers,
>
> Stephen.
>
> ________________________________________
> From: wix-users <wix-users-bounces at lists.wixtoolset.org> on behalf of
> Edwin Castro <egcastr at gmail.com>
> Sent: 11 November 2015 22:48
> To: WiX Toolset Users Mailing List
> Subject: Re: [wix-users] MSI database update at install time
>
> The Windows Installer does not allow you to delete/modify rows in custom
> actions.
>
> You can add temporary rows using an immediate custom action.
>
> Why do you think you need to update rows at install time? Perhaps you can
> use Formatted strings and properties instead?
>
> --
> Edwin G. Castro
>
> On Wed, Nov 11, 2015 at 2:40 PM, Stephen Woolhead <
> stephen at perfectphase.com>
> wrote:
>
> > Hi, I writing a WiX extension and one of the steps I need my custom
> > actions to do is update existing records in the MSI database at install
> > time.
> >
> >
> > After a bit of research it appears that I can't use SQL UPDATE on
> > permanent tables at install time. Blog posts I've seen [1] say that I
> need
> > to delete and insert a new row, but when I try this I get the following
> > errors:
> >
> >
> > Ready to execute delete query: DELETE FROM `IIsAppPool` WHERE
> > `IIsAppPool`.`AppPool`='web_general_apppool'
> > Delete Query Executed Successfully
> > Ready to execute insert query: INSERT INTO `IIsAppPool` (`AppPool`,
> > `Name`, `Component_`, `Attributes`, `User_`, `RecycleMinutes`,
> > `RecycleRequests`, `RecycleTimes`, `IdleTimeout`, `QueueLimit`, `CPUMon`,
> > `MaxProc`, `VirtualMemory`, `PrivateMemory`, `ManagedRuntimeVersion`,
> > `ManagedPipelineMode`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
> ?,
> > ?) TEMPORARY
> > Executing insert query...
> > MSI (s) (B8!D0) [22:33:20:906]: Database string pool is corrupted.
> > MSI (s) (B8!D0) [22:33:20:906]: Note: 1: 2259 2:  3:  4:
> > Exception Type: Microsoft.Deployment.WindowsInstaller.InstallerException
> >
> >
> > Is this possible or am I heading down a blind end?
> >
> >
> > Cheer,
> >
> >
> > Stephen.
> >
> >
> >
> >
> > [1]
> >
> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Updating-msi-database-install-time-tp7587512p7587523.html
> >
> >
> > ____________________________________________________________________
> > WiX Toolset Users Mailing List provided by FireGiant
> > http://www.firegiant.com/
> >
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/
>


More information about the wix-users mailing list