Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Conditional Install of Merge Modules with Custom Actions

15 views
Skip to first unread message

Jon

unread,
Feb 21, 2003, 12:14:27 PM2/21/03
to
I'm trying to create an install that uses the MSDE 2000 Merge
Modules.
Ideally I would like MSDE 2000 to be installed conditionally, i.e if a
user does not wish to install it, or a certain reg value is set on the
target machine, then I don't want MSDE 2000 installed.

Ok, so I create a feature called MSDE2000, and attach the MM's to it.
Then run a test install, deselect the MSDE2000 option in the custom
setup dialog box of my install, and continue.
Unfortunately my install crashes out with an 'Insallation Incomplete'
Dialog Box. !!!! An inspection of the log files reveals that the MSDE
related custom actions are being run regardless of wether I select the
MSDE option. A quick peek at the post-merge MSI with orca also reveals
the MSDE custom actions set to run with no condition logic related to
the user Selecting/Deselecting the feature. (BTW the Msi appares to
think it has installed ok for some reason, as it subsequently appears
in the add/remove programs list!!! A sample of the log file is
included at the end of this post)

Now i might be missing something blindingly obvious here, but my
assumption is that if a Feature created with merge modules is not
selected for install, then the custom actions associated with that MM
should not be run either. Or does IS assume that MM developers should
include code to check that their feature is being installed before
carrying out whatever their feature specific CA is supposed to do???

I am using IS7 but as I use a standard MSI project I
thought it would be relevant to post here too,

Jon

<last_few_lines_of_log_file>

Action start 11:38:11: InstallFinalize.
SOFTWARE\Microsoft\Microsoft SQL Server
Setup.{11F7C2CA-A385-418B-BDA0-D69D882C1C56}
Start custom action DeferProperties
Start custom action SetProductNameInstance
SetProductNameInstance: It is not our MSI, no touch ARP.
Defer Properties returns: 0
SOFTWARE\Microsoft\Microsoft SQL Server
Setup.{11F7C2CA-A385-418B-BDA0-D69D882C1C56}
TempFolder is C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{11F7C2CA-A385-418B-BDA0-D69D882C1C56}\
Loading extended custom action library
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{11F7C2CA-A385-418B-BDA0-D69D882C1C56}\sqlcax.dll
SOFTWARE\Microsoft\Microsoft SQL Server
Setup.{11F7C2CA-A385-418B-BDA0-D69D882C1C56}
Starting custom action NoRebootReplace
TempFolder Property is C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\
Source Dir Property is
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\SqlSetup\Temp
Action ended 11:38:12: InstallFinalize. Return value 1.
Action start 11:38:12:
SetServerRegKeyPrivileges.2D02443E_7002_4C0B_ABC9_EAB2C064397B.
SOFTWARE\Microsoft\Microsoft SQL Server
Setup.{11F7C2CA-A385-418B-BDA0-D69D882C1C56}
TempFolder is C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{11F7C2CA-A385-418B-BDA0-D69D882C1C56}\
Loading extended custom action library
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{11F7C2CA-A385-418B-BDA0-D69D882C1C56}\sqlcax.dll
SOFTWARE\Microsoft\Microsoft SQL Server
Setup.{11F7C2CA-A385-418B-BDA0-D69D882C1C56}
Error applying permissions to key
Action ended 11:38:12:
SetServerRegKeyPrivileges.2D02443E_7002_4C0B_ABC9_EAB2C064397B. Return
value 3.
Action ended 11:38:12: INSTALL. Return value 3.
Action ended 11:38:12: ExecuteAction. Return value 3.
Action start 11:38:12: SetupCompleteError.
Action ended 11:38:16: SetupCompleteError. Return value 2.
Action ended 11:38:16: INSTALL. Return value 3.
=== Logging stopped: 20/02/2003 11:38:16 ===
MSI (c) (48:D8): Product: Default -- Configuration failed.

</last_few_lines_of_log_file>

0 new messages