stefan_riediger
Posts: 32
Joined: Fri Feb 18, 2022 4:07 pm

Custom Actions: User Selection should show all dialogs

Dear Advanced Installer Team,

I would like to execute a custom action (from a DLL) on the Custom Actions > Wizard Dialog Stage after a specific dialog.
Unfortunately the context menu only give me the option for a few Dialogs (Welcome, Resume, Maintenance, Patch, Progress) as you can see in the screenshot.
CustomActionsUserSelection.png
CustomActionsUserSelection.png (55.96 KiB) Viewed 19424 times
I know that I can execute the Custom Action (Without Sequence) on the Published Events of the Next button of the specific dialog.
This works fine.

On the other hand, in case of an unattended installation started from the command line without UI

Code: Select all

mysetup.exe /qn
, I have to add the Custom Action a second time (With Sequence), because the Wizard Dialog Stage is not executed.
This works also fine.

To avoid that I have to add the Custom Action twice, I have the following feature request:
On the Custom Actions > Wizard Dialog Stage the context menu should also contain all other used dialogs, so that I need only to have one Custom Action, which is used on the Wizard Dialog Stage and on the Install Execution Stage (Without Sequence), with the Advanced Execution Scenarios set to Skip action in Install Execution Stage if executed in Dialogs Stage

I hope that I have properly described my feature request.
Let me know if you need any additional information.
Thank you very much in advance.

Best regards,
Stefan
Catalin
Posts: 6608
Joined: Wed Jun 13, 2018 7:49 am

Re: Custom Actions: User Selection should show all dialogs

Hello Stefan,

I definitely understand what you mean there, but I'm afraid this improvement can not really be implemented due to how Windows Installer works.

I have explained in the following thread how this all works:

Re: Use a system value as default for textbox?

Now, to overcome your scenario, what we can do is the following:

- add the custom action twice, once with sequence (for the silent scenario) and once without sequence (for full UI scenario)

- the one without sequence, we schedule it on the next button of our dialog

- the one with sequence, we schedule it under Install Execution Stage

Instead of using the "Advanced Scenarios", we will use an internal logic.

For instance, if the custom action allows it (e.g. if it's a script or perhaps a C# custom action), we can set a property for when it executes under Wizard Dialogs Stage and then use this property to NOT execute it under Install Execution Stage.

Hope that helps!

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
stefan_riediger
Posts: 32
Joined: Fri Feb 18, 2022 4:07 pm

Re: Custom Actions: User Selection should show all dialogs

Hello Catalin,

thank you very much for the explanation.

I've read the posts and linked articles and my head is still smoking ;) .I will read them on the weekend a second time and try to fully understand how things work.

For now, I believe you.

The custom actions I'm referring are exported functions from our C++ Dlls.

Regarding your suggestion with the internal logic, seemed to be a small maintenance help. It would be OK. But don't set the priority to high, because the Advanced Scenario radio button selection Skip action in Install Execution Stage if executed works and I'm setting it "automatically" in my use case.

Thanks again and best regards,
Stefan
Catalin
Posts: 6608
Joined: Wed Jun 13, 2018 7:49 am

Re: Custom Actions: User Selection should show all dialogs

Hello Stefan,

You are always welcome! :D

If you have any other questions, please do not hesitate to let me know and I will gladly assist.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Feature Requests”