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