I am reading WIX script written by others. There are some code really confuses me.
<Custom Action='UnLoadSchedulerPerfCounters' After='InstallInitialize'>
<![CDATA[(Installed) AND (!Scheduler = 3)]]>
</Custom>
<Custom Action='RollbackSchedulerPerfCounters' After='WriteRegistryValues'>
<![CDATA[(&Scheduler = 3)]]>
</Custom>
So, what's the difference between !Scheduler
and &Scheduler
?
Is any special meaning when property is prefix-ed by &
or !
?
From http://www.tramontana.co.hu/wix/lesson5.php#5.3:
Prepending some special characters to the names will give them extra meaning:
% environment variable (name is case insensitive) $ action state of component ? installed state of component & action state of feature ! installed state of feature
The last four can return the following integer values:
-1 no action to be taken 1 advertised (only for components) 2 not present 3 on the local computer 4 run from the source
Those are operators on the Windows Installer condition syntax. See this MSI SDK documentation for a complete list: http://msdn.microsoft.com/en-us/library/aa368012.aspx.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With