Any other ideas why the custom action might only fail when called from a
merge module?

Thanks!
-Tina

On Tue, Oct 14, 2008 at 4:28 PM, Tina Basinger <[EMAIL PROTECTED]>wrote:

>  All of the code I included is defined in the merge module.  Thus, any
> modularization should occur across all 3 items (custom action definition,
> custom action scheudling in InstallExecuteSequence, and binary definition).
>
> Looking through Orca at the main install, it seems to be hooked up
> correctly.  The Binary table has a reference to
> BINMAP.DLL.FE2FB413_1E39_4B13_AC8B_A3F8022742C4, and the CustomAction table
> has an Action named InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4
> defined with a source of BINMAP.DLL.FE2FB413_1E39_4B13_AC8B_A3F8022742C4
> (which matches the binary name).  Then the InstallExecuteSequence table
> schedules an Action named
> InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4 (which matches the
> custom action name).
>
> -Tina
>
>   On Tue, Oct 14, 2008 at 4:12 PM, Jason Ginchereau <
> [EMAIL PROTECTED]> wrote:
>
>> When you build a merge module, all IDs get modularized (a GUID is
>> appended) to avoid naming clashes. So if you have the Binary element defined
>> in one module but reference it from another, the modularization won't be
>> consistent. If you really want to do that, you'll have to manually append
>> the GUID suffix in one place or another. Open the MSI or MSM in Orca to see
>> what the modularized IDs look like.
>>
>>
>> -----Original Message-----
>> From: Tina Basinger [mailto:[EMAIL PROTECTED]
>>  Sent: Tuesday, October 14, 2008 11:05 AM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Debugging MakeSfxCA
>>
>> So, this only is a problem for custom actions defined and scheduled by my
>> merge module.  I have the same custom action assembly with helper assembly
>> that is referenced directly by the main install for several custom
>> actions,
>> and all of those actions work fine.
>>
>> My merge module has the custom action defined like this.
>>
>>
>> <CustomAction Id="InitInstallDIR" BinaryKey="BINMAP.DLL" DllEntry="
>> InitInstallDIR" />
>>
>> <InstallExecuteSequence>
>>
>> <Custom Action="InitInstallDIR" After="CostFinalize">Not
>> Installed</Custom>
>>
>> </InstallExecuteSequence>
>>
>> <Binary Id="BINMAP.DLL" SourceFile="
>> $(env.INETROOT)\distrib\$(env.BUILDTYPE)\Install\MyActions.CA.dll" />
>>
>>
>> Any idea why it works from the main install, but not the merge module?
>>
>> Thanks!
>> -Tina
>> On Tue, Oct 14, 2008 at 10:47 AM, Jason Ginchereau
>> <[EMAIL PROTECTED]>wrote:
>>
>> > Make sure you are inserting the correct DLL into the Binary table. That
>> DLL
>> > should be the output of MakeSfxCA, which is the native SfxCA.dll stub
>> with
>> > managed assemblies appended as a cab. Verify it has the expected
>> entrypoint
>> > that MSI is looking for by running "dumpbin.exe /exports YourCA.dll".
>> Among
>> > other noise you should see the entrypoint that matches what's in the
>> Target
>> > column of CustomAction table, or in WiX that's that DllEntry attribute
>> of
>> > the CustomAction element.
>> >
>> > -----Original Message-----
>> > From: Tina Basinger [mailto:[EMAIL PROTECTED]
>> >  Sent: Tuesday, October 14, 2008 7:34 AM
>> > To: General discussion for Windows Installer XML toolset.
>> > Subject: Re: [WiX-users] Debugging MakeSfxCA
>> >
>> > I am packaging the helper assembly with the custom action by passing it
>> as
>> > the last parameter to MakeSfxCA.
>> >
>> > The verbose log has the following around the error message.
>> > MSI (s) (EC:14) [08:38:00:565]: Doing action:
>> > InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4
>> > Action 8:38:00: InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4.
>> > Action start 8:38:00:
>> InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4.
>> > MSI (s) (EC:10) [08:38:00:569]: Invoking remote custom action. DLL:
>> > C:\Windows\Installer\MSI2C2A.tmp, Entrypoint: InitInstallDIR
>> > MSI (s) (EC:88) [08:38:00:570]: Generating random cookie.
>> > MSI (s) (EC:88) [08:38:00:576]: Created Custom Action Server with PID
>> 6012
>> > (0x177C).
>> > MSI (s) (EC:90) [08:38:00:605]: Running as a service.
>> > MSI (s) (EC:90) [08:38:00:606]: Hello, I'm your 32bit Impersonated
>> custom
>> > action server.
>> > MSI (s) (EC:14) [08:38:00:610]: Note: 1: 1723 2:
>> > InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4 3: InitInstallDIR 4:
>> > C:\Windows\Installer\MSI2C2A.tmp
>> > DEBUG: Error 2835:  The control ErrorIcon was not found on dialog
>> > SetupError
>> > Internal Error 2835. ErrorIcon, SetupError
>> > Error 1723.There is a problem with this Windows Installer package. A DLL
>> > required for this install to complete could not be run. Contact your
>> > support
>> > personnel or package vendor.  Action
>> > InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4, entry:
>> InitInstallDIR,
>> > library: C:\Windows\Installer\MSI2C2A.tmp
>> > MSI (s) (EC:14) [08:38:09:138]: Product: MyProduct -- Error 1723.There
>> is a
>> > problem with this Windows Installer package. A DLL required for this
>> > install
>> > to complete could not be run. Contact your support personnel or package
>> > vendor.  Action InitInstallDIR.FE2FB413_1E39_4B13_AC8B_A3F8022742C4,
>> entry:
>> > InitInstallDIR, library: C:\Windows\Installer\MSI2C2A.tmp
>> >
>> > On Tue, Oct 14, 2008 at 10:26 AM, Jason Ginchereau
>> > <[EMAIL PROTECTED]>wrote:
>> >
>> > > If you look at the verbose log you can see what custom action it is
>> > trying
>> > > to run just before that error. And are there any other error messages
>> > nearby
>> > > in the log?
>> > >
>> > > Is the helper assembly getting packaged with the custom action by
>> > > MakeSfxCA? It should be automatically if there is an assembly
>> reference.
>> > > That's probably not the issue anyway, since if it was only a managed
>> > > dependency problem then the unmanaged stub would start to run, and it
>> > would
>> > > print a different error message to the log.
>> > >
>> > > -Jason-
>> > >
>> > > -----Original Message-----
>> > > From: Tina Basinger [mailto:[EMAIL PROTECTED]
>> > >  Sent: Tuesday, October 14, 2008 7:11 AM
>> > > To: General discussion for Windows Installer XML toolset.
>> > > Subject: Re: [WiX-users] Debugging MakeSfxCA
>> > >
>> > > OK, so  i've made some head way.  I now have 2 custom action
>> assemblies
>> > > with
>> > > 12 and 13 custom actions respectively, and a third "helper" assembly
>> with
>> > > common code needed for both sets of custom actions.  Once I got
>> > everything
>> > > compiling and rebuilt, I ran my install and got the following errror:
>> > >
>> > > Error 1723:  There is a problem with this Windows Installer package.
>>  A
>> > DLL
>> > > required for this install to complete could not be run.  Contact your
>> > > support personal or package vendor.
>> > >
>> > > Can anyone tell me how I can determine what DLL it is talking about
>> >  Should
>> > > I be able to have a custom action helper assembly?  How do I deploy it
>> so
>> > > that it can be called from the custom actions?
>> > >
>> > > Thanks!
>> > > -Tina
>> > >
>> > >
>> > > On Thu, Oct 9, 2008 at 12:41 PM, Tina Basinger <
>> [EMAIL PROTECTED]
>> > > >wrote:
>> > >
>> > > >  Okay, i'll proceed with the first option to clean up some of our
>> > > existing
>> > > > custom actions, and see where that leaves me.
>> > > > Thanks!
>> > > > -Tina
>> > > >
>> > > >
>> > > >
>> > > > On Thu, Oct 9, 2008 at 11:25 AM, Jason Ginchereau <
>> > > [EMAIL PROTECTED]>wrote:
>> > > >
>> > > >> Wow, that's a lot of custom actions. Most setups (should) have just
>> a
>> > > few
>> > > >> if any. The limit of 16 is currently by design, although the tool
>> > should
>> > > >> definitely handle the overflow more gracefully. I'll fix that.
>> > > >>
>> > > >> If you have more than 16 custom actions, your options are:
>> > > >>
>> > > >> 1. Design immediate CAs to iterate over rows in a table or behave
>> > > >> differently based on property data instead of the entrypoint name.
>> Or
>> > > for
>> > > >> deferred CAs, schedule them with an immediate CA and pass
>> parameters
>> > via
>> > > >> CustomActionData (a common pattern).
>> > > >>
>> > > >> 2. Split your custom actions across multiple assemblies, each
>> having
>> > > less
>> > > >> than 16.
>> > > >>
>> > > >> 3. Edit the headers for the SfxCA stub to reserve more space, and
>> > > rebuild
>> > > >> it. Additional entrypoint slots will need to be defined in
>> > > EntryPoints.def
>> > > >> and EntryPoints.h.
>> > > >>
>> > > >> -Jason-
>> > > >>
>> > > >> -----Original Message-----
>> > > >> From: Tina Basinger [mailto:[EMAIL PROTECTED]
>> > > >>  Sent: Thursday, October 09, 2008 7:39 AM
>> > > >> To: General discussion for Windows Installer XML toolset.
>> > > >> Subject: Re: [WiX-users] Debugging MakeSfxCA
>> > > >>
>> > > >> OK, this seems to be failing on the following line of code, which
>> is
>> > > line
>> > > >> 424 in MakeSfxCA.cs.
>> > > >>
>> > > >> entryPoints.Keys.CopyTo(slotSort, slotCount - entryPoints.Count);
>> > > >> It's failing because slotCount = 16 and entryPoints.Count = 38, so
>> > > >> slotCount-entryPoints.Count is negative.  Apparenlty sfxCA.dll only
>> > has
>> > > 16
>> > > >> entry points?  What does one do if you have more custom actions
>> than
>> > > that?
>> > > >>
>> > > >> Thanks!
>> > > >> -Tina
>> > > >>
>> > > >> On Wed, Oct 8, 2008 at 6:03 PM, Jason Ginchereau <
>> > > [EMAIL PROTECTED]
>> > > >> >wrote:
>> > > >>
>> > > >> > There's no way to get a more detailed error printout without
>> > modifying
>> > > >> the
>> > > >> > code of the MakeSfxCA tool.
>> > > >> >
>> > > >> > The easiest way to diagnose the issue would be to capture the
>> > > >> command-line
>> > > >> > from your build log and then launch that same command-line in a
>> > > >> debugger:
>> > > >> > devenv /debugexe MakeSfxCA.exe <parameters>
>> > > >> >
>> > > >> > If you don't have it already, the source code for MakeSfxCA can
>> be
>> > > found
>> > > >> in
>> > > >> > wix3-sources.zip, in the src\dtf\Tools\MakeSfxCA directory.
>> > > >> >
>> > > >> > Or, if you can send me enough info / files to reproduce the
>> error,
>> > > I'll
>> > > >> > look into it.
>> > > >> >
>> > > >> > -Jason-
>> > > >> >
>> > > >> > -----Original Message-----
>> > > >> > From: Tina Basinger [mailto:[EMAIL PROTECTED]
>> > > >> > Sent: Wednesday, October 08, 2008 2:05 PM
>> > > >> > To: Wix Group
>> > > >> > Subject: [WiX-users] Debugging MakeSfxCA
>> > > >> >
>> > > >> > Any tips on figuring out MakeSfxCA errors?  I'm getting the
>> > following
>> > > >> > output
>> > > >> > when calling MakeSfxCA.exe from the command line.
>> > > >> >
>> > > >> > ...
>> > > >> > CA_Name=Fully_Qualified_CA_Name
>> > > >> > Modifying SfxCA.dll stub
>> > > >> > Error: Non-negative number required.
>> > > >> > Parameter name: index
>> > > >> >
>> > > >>
>> > >
>> -------------------------------------------------------------------------
>> > > >> > This SF.Net email is sponsored by the Moblin Your Move
>> Developer's
>> > > >> > challenge
>> > > >> > Build the coolest Linux based applications with Moblin SDK & win
>> > great
>> > > >> > prizes
>> > > >> > Grand prize is a trip for two to an Open Source event anywhere in
>> > the
>> > > >> world
>> > > >> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > >> > _______________________________________________
>> > > >> > WiX-users mailing list
>> > > >> > WiX-users@lists.sourceforge.net
>> > > >> > https://lists.sourceforge.net/lists/listinfo/wix-users
>> > > >> >
>> > > >> >
>> > > >> >
>> > > >>
>> > >
>> -------------------------------------------------------------------------
>> > > >> > This SF.Net email is sponsored by the Moblin Your Move
>> Developer's
>> > > >> > challenge
>> > > >> > Build the coolest Linux based applications with Moblin SDK & win
>> > great
>> > > >> > prizes
>> > > >> > Grand prize is a trip for two to an Open Source event anywhere in
>> > the
>> > > >> world
>> > > >> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > >> > _______________________________________________
>> > > >> > WiX-users mailing list
>> > > >> > WiX-users@lists.sourceforge.net
>> > > >> > https://lists.sourceforge.net/lists/listinfo/wix-users
>> > > >> >
>> > > >>
>> > >
>> -------------------------------------------------------------------------
>> > > >> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > > >> challenge
>> > > >> Build the coolest Linux based applications with Moblin SDK & win
>> great
>> > > >> prizes
>> > > >> Grand prize is a trip for two to an Open Source event anywhere in
>> the
>> > > >> world
>> > > >> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > >> _______________________________________________
>> > > >> WiX-users mailing list
>> > > >> WiX-users@lists.sourceforge.net
>> > > >> https://lists.sourceforge.net/lists/listinfo/wix-users
>> > > >>
>> > > >>
>> > > >>
>> > >
>> -------------------------------------------------------------------------
>> > > >> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > > >> challenge
>> > > >> Build the coolest Linux based applications with Moblin SDK & win
>> great
>> > > >> prizes
>> > > >> Grand prize is a trip for two to an Open Source event anywhere in
>> the
>> > > >> world
>> > > >> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > >> _______________________________________________
>> > > >> WiX-users mailing list
>> > > >> WiX-users@lists.sourceforge.net
>> > > >> https://lists.sourceforge.net/lists/listinfo/wix-users
>> > > >>
>> > > >
>> > > >
>> > >
>> -------------------------------------------------------------------------
>> > > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > > challenge
>> > > Build the coolest Linux based applications with Moblin SDK & win great
>> > > prizes
>> > > Grand prize is a trip for two to an Open Source event anywhere in the
>> > world
>> > > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > _______________________________________________
>> > > WiX-users mailing list
>> > > WiX-users@lists.sourceforge.net
>> > > https://lists.sourceforge.net/lists/listinfo/wix-users
>> > >
>> > >
>> > >
>> -------------------------------------------------------------------------
>> > > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > > challenge
>> > > Build the coolest Linux based applications with Moblin SDK & win great
>> > > prizes
>> > > Grand prize is a trip for two to an Open Source event anywhere in the
>> > world
>> > > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > > _______________________________________________
>> > > WiX-users mailing list
>> > > WiX-users@lists.sourceforge.net
>> > > https://lists.sourceforge.net/lists/listinfo/wix-users
>> > >
>> >
>> -------------------------------------------------------------------------
>> > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > challenge
>> > Build the coolest Linux based applications with Moblin SDK & win great
>> > prizes
>> > Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > _______________________________________________
>> > WiX-users mailing list
>> > WiX-users@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/wix-users
>> >
>> >
>> >
>> -------------------------------------------------------------------------
>> > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> > challenge
>> > Build the coolest Linux based applications with Moblin SDK & win great
>> > prizes
>> > Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > _______________________________________________
>> > WiX-users mailing list
>> > WiX-users@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/wix-users
>> >
>> -------------------------------------------------------------------------
>> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> Build the coolest Linux based applications with Moblin SDK & win great
>> prizes
>> Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> _______________________________________________
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>> -------------------------------------------------------------------------
>> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> Build the coolest Linux based applications with Moblin SDK & win great
>> prizes
>> Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> _______________________________________________
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>
>
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to