Tuesday, 28 November 2023

Wix v4 - Launch Condition syntax

 Just wasted too much time figuring out what was wrong with the following rather trivial line:

<Launch Condition="'$(Name)' = 'thebestname'" Message="no documentation for you"/>

This line results in the following error:

Error WIX0204 ICE03: Bad conditional string

It seems it should have single outer quotes and double innerquotes:

<Launch Condition='"$(Name)" = "thebestname"' Message="sillyness"/>

This is far from the only issue with Wix v4 I had which would have been avoided given decent documentation. If, like me, you do not have previous Wix experience and just want to dive in Wix v4, I strongly discourage you to do so.

For completeness, with a property (my actual use case) instead of a literal it looks like this:

<Launch Condition='"$(Name)" = THE_PROPERTY' Message="uh oh"/>