[wix-users] Custom Actions are getting excluded from MSI

Edwin Castro egcastr at gmail.com
Sat Apr 2 23:48:05 PDT 2022


I do not understand. A bootstrapper exe does not run msi custom actions.
Not sure how one relates to the other.

The custom action dll _must_ exist in the Binary table for the other custom
actions to work. The rows for the other custom actions in the CustomAction
table will reference a row from the Binary table. Theoretically your new
CustomAction element would just need to use the same binary *but* you still
need the Product element to reference the new CustomAction element. That
can only happen if the Product element was authored to allow extensibility.

There's a lot about your project that doesn't make a lot of sense to me,
likely because I don't completely understand it yet. Beginning with the
projects you have and how they integrate with this NuGet package would be
helpful.

--
Edwin G. Castro


On Sat, Apr 2, 2022 at 11:16 PM Venkatesh H <venh.123 at gmail.com> wrote:

> Hi Edwin,
>
> Thanks a lot for the detailed response. After posting it in this group, I
> did some more research. I couldn't find it in the InstallExecuteSequence
> table and surprisingly, the Binary table is also missing the key. However,
> there are other custom action methods in the same dll which are working
> fine. Also, the same MSI when part of the Bootstrapper exe is executing
> these custom actions and when I extracted that MSI from the exe and opened
> it in Orca, everything looks fine and works fine.
>
> However, after I made some changes in the code (in some other modules) and
> built the same MSI, these entries are missing. Not sure what is wrong.
>
> On Sun, Apr 3, 2022 at 10:12 AM Edwin Castro <egcastr at gmail.com> wrote:
>
>> The product in the nuget package has to provide an extension point. Some
>> ComponentGroup or FeatureGroup or similar that it references and must be
>> defined by you. Include or reference the CustomAction and other required
>> elements in the same Fragment that defines the extension element.
>>
>> You said the CustomAction is missing from the CustomAction table. Is it
>> present in the InstallExecuteSequence table? What about the custom action
>> DLL? Is it present in the Binary table? If yes, then make sure the
>> CustomAction is referenced from the Fragment containing the element that is
>> present in the MSI.
>>
>> --
>> Edwin G. Castro
>>
>>
>> On Sat, Apr 2, 2022, 11:37 Venkatesh H via wix-users <
>> wix-users at lists.wixtoolset.org> wrote:
>>
>>> Also, the CustomAction.wxs has an <InstallExecuteSequence> element, which
>>> references the custom actions. But still the custom actions are not found
>>> in the MSI table. I also checked and confirmed that CustomAction.wxs is
>>> included in the .wixproj file.
>>>
>>> On Sat, Apr 2, 2022 at 11:30 PM Venkatesh H <venh.123 at gmail.com> wrote:
>>>
>>> > I have an existing Visual Studio WiX project. It has Custom Actions
>>> > defined in a separate CustomAction.wxs file. But the custom actions
>>> are not
>>> > getting called, although the conditions are correct. After a lot of
>>> > thinking,I opened up the MSI in Orca and found that these Custom
>>> Actions
>>> > are missing in the Custom Action table.
>>> >
>>> > I cannot add a CustomActionRef element since the Product element is
>>> > implemented in a separate framework and referenced as a NuGet package.
>>> I
>>> > don't know how to ensure CAs are included in the MSI and getting
>>> called.
>>> > Can anyone please help?
>>> >
>>>
>>> ____________________________________________________________________
>>> WiX Toolset Users Mailing List provided by FireGiant
>>> http://www.firegiant.com/
>>>
>>



More information about the wix-users mailing list