Most high end installation programs use scripting language as a software installation tool
to perform special operations during
the Setup and UnInstall process. Scripting is a powerful concept, but it requires you to be a
programmer and spend considerable time mastering the scripting language and debugging your code.
QSetup features an innovative concept the "Execution Engine".
This engine will let you define special operations to be performed during the
various stages of the Setup and Uninstall process - using simple selections from
dropdown menus rather then script programming in other installer programs.
The "Execution Engine" lets you perform a wide range of operations in a simple and intuitive way.
Other software installation tools like "Installshield", "Advanced Installer" or "Inno Setup" implement such operations using
very complex and time consuming scripting language. With QSetup, installation of software is more intuitive and easy.
The Execute Engine operations can be:
UnConditional
Conditional
In a While loop.
With QSetup software installer you can specify up to 3 conditions for every operation using the following boolean
operators between the conditions: AND, OR, XOR, NOT.
Operations can be performed at the following stages:
Undefined Stage
Setup Start
Copy Start
Copy End
Setup End
UnInstall Start
UnInstall End
Before User Information
After User Information
Before Setup Type
After Setup Type
Before Custom
After Custom
Before Destination
After Destination
Before Associate
After Associate
Before Shortcuts
After Shortcuts
Before Complete
After Complete
After Billboard
Before Dialogs
After Reg Components
For detailed description of all the "Condition Commands" Click Here.
For detailed description of all the "Execution Commands" Click Here.
To see a snapshot of the "Define Execution Item" dialog Click Here.
Variables
Starting from Version 6.0 the Execute Engine is capable of handling variables.
Using the Execute Engine you can Set, Compare & Use internal variables.
The following commands are Variable related:
Set Variable Value
Select one of many
Input text string
Set Case Sensitive
Set Whole Word
Read Registry Value - (Into a variable)
Read INI Item - (Into a variable)
Read Environment Variable - (Into a variable)
Compare 1 Variable
Compare 2 Variables
Text Found in Variable
Variable Found in Text
Variable Found in Variable
Variable is Empty
Perform Variable Math
A variable is a string item in the form VariableName=VariableValue.
Where ever it is legal to enter a directory alias you may also enter a VariableName in the form: <VariableName>.
Variables are kept across the entire Setup session, thus you can define a variable at "Setup Start" and use it a "Setup End".
Variables are also saved from setup to uninstall, thus you can define a variable during the setup process
and use it during the UnInstall process.
Detailed description of the entire variables concept may be found in the Composer's help files.
The following Conditions are currently supported:
Files & Directories
File Found
Directory Found
Drive Found
Text Found in File
File Found (HTTP)
File Attribute is in
File is Locked
Application
Application Found
Application Path Found
Application Version is
Application is Running
Miscellaneous 1
Exe is Running
Service is Installed
Service is Running
Operating System is in
File Version is
HWindow is Found
Local Language is in
Selected Language is in
File Size is (Bytes)
File Date and Time is
Internet Connection OK
Last Executable Exit Code is
Printer Installed
Registry
Registry Key Found
Registry Value Found
Registry Value is
Environment
Environment Variable Found
Environment Variable Is
Environment Variable Is (UpCase)
Hardware
Memory Size is (MB)
CPU Speed is (MHz)
Screen Resolution is
Color Depth is
Disk Free Space is (MB)
X64
Running on 64 Bit OS
64 Bit State is ON
Modules
.NET Framework Version is
Visual Basic Runtime Found
ADO(MDAC) Version Is
MS-ACCESS Version is
SQL(MSDE) Version is
ODBC Installed
BDE Installed
DirectX Version is
Media Player Version is
JDK Version is
JRE Version is
DAO Installed
Visual J# Version is
Internet Explorer Version is
Flash Player Version is
Acrobat Reader Version is
SQL Express Version is
MS JET 3.5 Version is
MS JET 4.0 Version is
IIS Version is
Miscellaneous 2
Ask Yes/No
Ask OK/Cancel
Setup Type is
Group Selected
Auto Update is Running
Billboard is Running
Admin
User Name is
Company Name is
Serial Number is
User is ADMINISTRATOR
User Privilege is in
Custom Dialogs
Control Text is
Control Text is Empty
Control Item Index is
Control is Checked
Variables
Compare 1 Variable
Compare 2 Variables
Text Found in Variable
Variable Found in Text
Variable Found in Variable
Variable is Empty
Variable Length is
The following Executions are currently supported:
Files
Delete File(s)
Copy File(s)
Move File(s)
Rename File(s)
Set File(s) Attributes
Allow Full Access File(s)
Download File (HTTP)
Open CAB File
Copy File Delayed
Get Short PathName
Get Expanded PathName
Get Network PathName
Directories
Create Directory
Remove Directory - (Will be removed only if empty).
Force Remove Directory - (Erase all files and remove the directory).
Set Working Directory
Copy Directory Tree
Rename Directory
Set Folder to
Allow Full Access Directory
Application
Delete Application Executable
Remove Application Directory
UnInstall application
Run Application
Run Application and Wait - (Wait until the process closes)
Shut Down Application
Wait while Application is Running
Executable
Shut Down Executable
Run Executable
Run Executable and Wait - (Wait until the process closes)
Shell Execute
Shell Execute and Wait - (Wait until the process closes)
Run Batch File
Run Batch File and Wait - (Wait until the process closes)
Run MSI File
Run MSI File and Wait - (Wait until the process closes)
Delete Running Executable
Wait while Executable is Running
Wait while Shell App is Running
NT Service
Create Service
Create Interactive Service
Create Kernel Service
Create File Service
Create Shared Service
Create Interactive Shared Service
Start Service
Stop Service
Pause Service
Continue Service
Remove Service
Servers & Drivers
Register OCX/COM Server
UnRegister OCX/COM Server
ODBC Config Data Source
Install Screen Saver
Install .INF File
Register .NET Assembly
UnRegister OCX/COM Server
IIS
Create IIS Virtual Director
Remove IIS Virtual Director
Create IIS Application
Remove IIS Application
GAC
Install Assembly in the GAC
UnInstall Assembly from the GAC
X64
Set 64 bit State
Set 32 bit State
Restore Original Setup State
Registry
Create Registry Key
Remove Registry Key
Create Registry Value (String)
Create Registry Value (Integer)
Create Registry Value (Hex)
Create Registry Value (MultiString)
Create Registry Value (ExpandString)
Append Registry Value (String)
Remove Registry Value
Read Registry Value
Append Registry Value (MultiString)
Install REG File
INI File
Write INI Item
Delete INI Item
Delete INI Section
Read INI Item
Environment
Create Environment Variable
Remove Environment Variable
Read Environment Variable
Text File
Append Text to a File - (Add <P> for NewLine & <T> for TAB)
Replace Text in File
Replace Text in File CR+TAB
File Association
Create File Association
Remove File Association
Set File Association Description
Set File Association Icon
Setup Dialog
Set Space Req on Drive
ADD to Space Req on Drive
Set Propose to Restart the PC
Set Propose to Launch the App.
Set Dialog to
Set Group
Refresh RunTimeDir
Browse for Folder
Browse for File
Set Setup Type
Enable Setup Dialog
Enable Dialog Button
Set Edit Text
Custom Dialogs
Set Control Property
Get Control Property
Variables
Set Variable Value
Perform Variable Math - ( + - * / )
Replace Text in Variable
Select one of many
Input text string
Input text string (many)
Set Case Sensitive
Set Whole Word
Miscellaneous
Display Message - (Add <P> for NewLine & <T> for TAB)
Show PopUp Message
Hide PopUp Message
Wait (MS)
Set Setup Exit Code
Restart the PC
Exit - (Abort the setup)
Break - (Stop execution of "Execute" item)
More Conditions and Executions will be added in future versions.
You may add Conditions and Executions that will suit your special needs by programming a special purpose DLL.