Software Update Wizard™ - Update Logic

The Software Update Wizard™ offers several methods for determining whether an update is actually required.  This page summarises the logic used.

The section counter (e.g. "[1]").

If the RunAlways keyword is not present in the update section then the only test that is made to determine whether an update is required is to compare the value of the last completed counter with the value of the counter in the update script.

The RunAlways keyword

If the RunAlways keyword is present in the update script section then the section counter test is not made and the update script section is processed.  The  CheckFile, CheckFileExists, FileDate, FileVersion and FileMD5 keywords are then evaluated and provide a more granular method for testing whether an update is required.

The  CheckFile, CheckFileExists, FileDate, FileVersion and FileMD5 keywords

These keywords are processed only if the RunAlways keyword is present in the update script section or if the script counter is greater than the counter of the last completed update.

The CheckFile, CheckFileExists, FileDate, FileVersion and FileMD5 keywords can be used in combination within a single update scrip, if required, and are evaluated on an AND, AND, AND bases.  Therefore the update is only actioned if all the tests in the section are TRUE.