Can the Bootstrapper do complex logic for install conditions?
Question
Can the Bootstrapper do complex logic on the install conditions? Such as FailIf (X = true AND Y = false)
Answer
No. The Bootstrapper only executes a single install condition at a time. If you need more complicated logic then you will need to expand it out into multiple Command statements and use BypassIfs.
For example, the SQL Server Express manifest requires Windows 2000 SP4 or Windows XP SP2 or Windows 2K3. Since we cannot express that in a single FailIf we have three seperate commands to execute sqlexpr; there is a BypassIf statement if the major OS version does not match and then have a FailIf statement if the minor version does not match.
Also, the install conditions cannot be linked together and are evaluated in order. If both a BypassIf and a FailIf statement will evaluate to true, which ever element is listed first in the XML manifest will be executed by the Bootstrapper.