I was experiencing this problem in 3.0.1820.0 but it seems to be fixed in 3.0.1910.0.

Meanwhile I am experiencing another issue...

I have the following setup:

- A set of merge-modules for various "software components".
- A minimally tweaked version of the minimal wixui.wixlib (replaced the WelcomeEULA with plain Welcome dialog).
- One of the merge-modules has an EXE which I'd like to conditionally launch at the end of installation.

So I did the following:

In the ExitDialog.wxs file for my wixlib mod, I added the following Control:

<Control Id="Launch" Type="CheckBox" Width="100" Height="17" X="135" Y="80" Property=" Launch.CF74FF55_B670_488B_85AE_785C01C14AFB"  CheckBoxValue="Checked">
            <Text>Launch Configuration Utility</Text>
</Control>

Note that the Property attribute is GUID qualified. This is necessary in order to get it to reflect the value set in the merge-module definition...

I also moved the sequence blocks (InstallUISequence, AdminUISequence) up into the wixui.wxs file itself, in order to avoid conflicting sequences later on (*).

I then added the following to my merge-module:
<Property Id='Launch' Value='Checked'/>
   
<UI>
      <Publish Event="DoAction" Value="LaunchConfig" Dialog="ExitDialog" Control="Finish"><![CDATA[Launch = "Checked"]]></Publish> 
</UI>

<CustomAction Id="LaunchConfig" FileKey="Configuration.exe" ExeCommand="" Return="check"/>

Configuration.exe is a file-key to a <File> in this merge module.

What seems to happen is that when linking the merge-module, the entire ExitDialog is brought into the module and 're-branded' to be GUID qualified. IE: I end up with a bunch of "ExitDialog.CF74FF55_B670_488B_85AE_785C01C14AFB " Dialog keys all over the show. Most importantly, for the DoAction event in the ControlEvent table.

When the merge-module is linked into the actual MSI build (which also has the wixui.wixlib linked so taht it can display UI), ExitDialog is *again* brought into the final MSI, such that there are both " ExitDialog.CF74FF55_B670_488B_85AE_785C01C14AFB" and "ExitDialog" Dialog keys. Obviously the wixui.wixlib only uses the original "ExitDialog", and it seems that the event is only registered under the " ExitDialog.CF74FF55_B670_488B_85AE_785C01C14AFB" key. What this means is that:
1. In order for the checkbox to reflect the state of the property, the "artificial" GUID qualification ((*) above) is necessary.
2. The LaunchConfig custom action will never be executed...

If I open the MSI in ORCA, and change the Dialog key (in the ControlEvent table) for the DoAction row to "ExitDialog" instead of "ExitDialog.CF74FF55_B670_488B_85AE_785C01C14AFB ", everything works as expected...

Help!

This seems like very dodge behaviour on the part of wix - or am I just going about it all wrong?

The result is
On 7/30/06, Bob Arnson <[EMAIL PROTECTED]> wrote:
Shmarya Rubenstein wrote:
> Ok... Now I'm getting the following Exception from wix:
Which version of WiX? Can you open a bug with a file that reproduces the
exception?

--
sig://boB
http://bobs.org




--
Shmarya
-----------------------------------------------------------
[EMAIL PROTECTED] - http://shmarya.net
NUnit rocks! http://nunit.com
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to