cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
haripanicker
Level 3

MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI in Installshield 2009

I created a chained package using installshield 2009. And it works fine

My next step is to create an embedded ui for this package.. Does installshield have any default embedde ui or any examples?

I created an embedded ui and added it to the package manually using orca.. The embedded ui shows up correctly... but when the 2nd msi gets installed it shows the ui of the 2nd msi.

Basically MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI doesnot happen...

Since installshield creates the embedded chainer executable, I do not know how to change the MsiJoinTransaction's parameter to MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI.

Hari
Labels (1)
0 Kudos
(5) Replies
MichaelU
Level 12 Flexeran
Level 12 Flexeran

We currently only pass dwTransactionAttributes=0 as we do not provide any direct support for scenarios that can benefit from the other flags. Similarly I've not had a chance to experiment with the ramifications of setting those flags when they're otherwise not exactly desired. Do you have any insight as to whether setting MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI should be always or conditionally, and whether MSITRANSACTION_CHAIN_EMBEDDEDUI may need to (always or conditionally) also be set? If we can decide on good options, I may be able to provide an update to ISChain.exe that you can use to get the behavior you want.
0 Kudos
haripanicker
Level 3

Hi thanx for the reply.

when someone uses chained packages, they wud want a single ui and not an ui for each msi that gets installed.. When dwTransactionAttributes is set to 0 the latter happens.

I feel its better that there is an option for setting dwTransactionAttributes to any of the 3 values in the installshield 2009 ui. Makes it more user friendly...

atleast i can tell u this advancedinstaller sets it to MSITRANSACTION_JOIN_EXISTING_EMBEDDEDUI always :).

May be installshield can provide one more feature.. like when the user adds a msi in chain packages, he can choose whether the install sud rollback or not if the install of this msi fails.

can u provide an updated ischain.exe?

thanx
Hari
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

I've submitted #IOC-000079414 to track this. I expect we'll add a command line flag (to IS_CHAINER_POST_COMMANDLINE) which allows this to be set, and an MSI property to influence how it is set. I'll see if and when I can get you a preview build of this.
0 Kudos
Holger_G
Level 10

MichaelU wrote:
I've submitted #IOC-000079414 to track this. I expect we'll add a command line flag (to IS_CHAINER_POST_COMMANDLINE) which allows this to be set, and an MSI property to influence how it is set. I'll see if and when I can get you a preview build of this.


Sounds great Michael,
'preview build' of a fix for IS 2009?
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

As a "new feature" (it adds support for an unsupported scenario, rather than fixing a bug with a supported scenario) no, it is not officially for IS2009. However the file in question should drop in (redist\language independent\i386, or just stream it into the binary table with ORCA for a quick test), even if it won't be as clean a fit until our next release.

Here's an untested and unsupported experimental version of ISChain.exe, which should allow specifying /join:n (where n is the numeric value of one of the constants; 0,1,2 are currently accepted by Windows Installer) to modify the value of dwTransactionAttributes. I suggest testing this with a SetProperty action in the execute sequence after the Prepare action, something like:

Property: IS_CHAINER_POST_COMMANDLINE
Value:/join:2 [IS_CHAINER_POST_COMMANDLINE]
Condition: IS_CHAINER_POST_COMMANDLINE

Let me know how this works out.
0 Kudos