CONTROL.SCR Subsystem Definition

The subsystem definition section of the CONTROL.SCR file follows the header section and contains the definitions for each of the subsystems in the installation package. A block of information must be included for each feature.

Each block of information in the subsystem definition section contains the following information:

The following is an example of a CONTROL.SCR subsystem definition.

ssgroup  =0ssname   ="Toolkit_Base"
ssversion="0.63.0"
sssize   =13

/*           - 7  = clock    */
ssgroup  =7
ssname   ="Clock Utility"
ssversion="0.63.0"
sssize   =839
ssinich  ="TLKCLOCK.SCR"

/*           - 8  = midiconv  */
ssgroup  =8
ssname   ="MIDI File Format Converter"
ssversion="0.63.0"
sssize   =170
ssinich  ="TLKCONV.SCR"

/*           - 3  = midiio   */
ssgroup  =3
ssname   ="MIDI IO Procedure"
ssversion="0.63.0"
sssize   =475

/*           - 11 = mcistrng */
ssgroup  =11
ssname   ="Media Control Interface String Test"
ssversion="0.63.0"
sssize   =194
ssinich  ="TLKSTRN.SCR"

/*           - 9  = duet1   */
ssgroup  =9
ssname   ="Duet Player I"
ssversion="0.63.0"
sssize   =4854
ssinich  ="TLKDUT1.SCR"

/*           - 10 = duet2     */
ssgroup  =10
ssname   ="Duet Player II"
ssversion="0.63.0"
sssize   =816
ssinich  ="TLKDUT2.SCR"

/*           - 12 = inc, lib, and h   */
ssgroup  =12
ssname   ="Header Files, Include Files and Libraries"
ssversion="0.63.0"
sssize   =384
ssconfigch="TOOLKIT.CH"

/*           - 13 = prog ref   */
ssgroup   =13
ssname   ="Program Reference"
ssversion="0.63.0"
sssize   =400
ssinich  ="TLKBOOKR.SCR"

/*           - 14 = workbook   */
ssgroup  =14
ssname   ="Workbook"
ssversion="0.63.0"
sssize   =150
ssinich  ="TLKBOOKW.SCR"

/*           - 2 = avcinst   */
ssgroup  =2
ssname   ="AVC I/O Procedure Installation Utility"
ssversion="0.63.0"
sssize   =102
ssinich  ="TLKIOPU.SCR"

/*           - 4 = caseconv   */
ssgroup  =4
ssname   ="Case Converter I/O Procedure"
ssversion="0.63.0"
sssize   =82

The CONTROL.SCR subsystem definition consists of the keywords shown in the folloiwng table.

┌────────────────────┬────────────────────────────────────────┐
│Keyword             │Description                             │
├────────────────────┼────────────────────────────────────────┤
│SSGROUP             │This required keyword specifies the     │
│                    │group.  This marks the beginning of a   │
│                    │group and assigns it a number. Each     │
│                    │group must have a unique number from    │
│                    │0-49 within the package; however, the   │
│                    │same number can be used with different  │
│                    │installation packages.  The groups are  │
│                    │displayed in the installation main      │
│                    │selection window in ascending order by  │
│                    │group number.  For example:             │
│                    │SSGROUP = 5                             │
├────────────────────┼────────────────────────────────────────┤
│SSNAME              │This required keyword specifies the     │
│                    │group name, as an ASCII string.  This   │
│                    │keyword is case sensitive and takes the │
│                    │form of a quoted string.  The name may  │
│                    │include special characters and may be   │
│                    │translated.  The name is displayed in   │
│                    │the main installation selection window. │
│                    │For example: SSNAME = "CD Audio"        │
├────────────────────┼────────────────────────────────────────┤
│SSVERSION           │This required keyword specifies the     │
│                    │version of the group in the form of a   │
│                    │quoted string.  This string must be in  │
│                    │the format "dd.dd.dd" (where dd         │
│                    │represents digits).  Any version not    │
│                    │specified in this format will be        │
│                    │converted to that format.  All string   │
│                    │items that are not digits or periods    │
│                    │will be converted to zeros. Any periods │
│                    │after the second period will be         │
│                    │converted to zeros.  For example:       │
│                    │SSVERSION = "1.1.0"                     │
├────────────────────┼────────────────────────────────────────┤
│SSSIZE              │This required keyword specifies the     │
│                    │total size of all the files in the      │
│                    │group.  The size denotes the number of  │
│                    │bytes in thousands (500 = 500KB).  This │
│                    │number is used to help determine if     │
│                    │there is enough disk space to support   │
│                    │the installation.  If you do not know   │
│                    │the correct size of a group, overstate  │
│                    │its size.  For example:                 │
│                    │SSSIZE = 1024                           │
├────────────────────┼────────────────────────────────────────┤
│SSINICH             │This optional keyword specifies the name│
│                    │of the file that contains changes to an │
│                    │INI file.  If this statement is missing,│
│                    │there are no changes to an INI file.    │
│                    │For example:                            │
│                    │SSINICH = "ACPAINI.CH"                  │
├────────────────────┼────────────────────────────────────────┤
│SSCONFIGCH          │This optional keyword specifies the name│
│                    │of the file that contains the changes to│
│                    │the CONFIG.SYS file.  If this statement │
│                    │is missing, there are no changes to the │
│                    │CONFIG.SYS file.  For example:          │
│                    │SSCONFIGCH = "ACPACON.CH"               │
├────────────────────┼────────────────────────────────────────┤
│SSCOREQS            │This optional keyword specifies a list  │
│                    │of corequisites needed for this group to│
│                    │run.  It specifies what other groups the│
│                    │current group depends on.  These other  │
│                    │groups must be installed for the current│
│                    │group to function.  (If this statement  │
│                    │is missing, there are no corequisites.) │
│                    │The corequisite is identified by its    │
│                    │group number. Corequisite groups should │
│                    │point to each other only if they require│
│                    │each other.  It is possible to have     │
│                    │group A list group B as a corequisite   │
│                    │and group B have no corequisites.  If   │
│                    │the user selects a group with           │
│                    │corequisites, but does not select all   │
│                    │the corequisites, the user is notified  │
│                    │before the installation starts.  This   │
│                    │entry can be repeated as necessary.  For│
│                    │example:                                │
│                    │SSCOREQS = 1                            │
├────────────────────┼────────────────────────────────────────┤
│SSICON              │This optional keyword names the icon    │
│                    │file for this group that is     to be   │
│                    │displayed in the installation main      │
│                    │selection window.  The icon file to be  │
│                    │displayed in the selection window must  │
│                    │reside on the first installation media  │
│                    │unit.  If this statement is missing, a  │
│                    │default icon is used.  For example:     │
│                    │SSICON = "ACPA.ICO"                     │
├────────────────────┼────────────────────────────────────────┤
│SSDLL               │This optional keyword names a DLL file  │
│                    │that is to be run during the            │
│                    │installation process.  The DLL          │
│                    │referenced will be run after all files  │
│                    │are copied to the destination, but      │
│                    │before any script processing is         │
│                    │performed.  If this keyword is present, │
│                    │the SSDLLENTRY keyword must also be     │
│                    │present.  For example:                  │
│                    │SSDLL="MY.DLL"                          │
├────────────────────┼────────────────────────────────────────┤
│SSDLLENTRY          │This optional keyword specifies the name│
│                    │of the entry point into SSDLL in the    │
│                    │form of a quoted string.  If this       │
│                    │keyword is present, the SSDLL keyword   │
│                    │must also be present.  For example:     │
│                    │SSDLLENTRY="MyEntry"                    │
├────────────────────┼────────────────────────────────────────┤
│SSTERMDLL           │This optional keyword names a DLL file  │
│                    │that is to be run during the            │
│                    │installation process.  The DLL          │
│                    │referenced will be run after all files  │
│                    │are copied to the destination and after │
│                    │all script processing is done. The      │
│                    │purpose of this keyword is to allow for │
│                    │processing to occur on a fully          │
│                    │configured multimedia system.  If this  │
│                    │keyword is present, the SSTERMDLLENTRY  │
│                    │keyword must also be present.  For      │
│                    │example:                                │
│                    │SSTERMDLL="MYTERM.DLL"                  │
├────────────────────┼────────────────────────────────────────┤
│SSTERMDLLENTRY      │This optional keyword specifies the name│
│                    │of the entry point into SSTERMDLL in the│
│                    │form of a quoted string.  If this       │
│                    │keyword is present, the SSTERMDLL       │
│                    │keyword must also be present.  For      │
│                    │example:                                │
│                    │SSTERMDLLENTRY="MyTermEntry"            │
├────────────────────┼────────────────────────────────────────┤
│SSDLLINPUTPARMS     │This optional keyword specifies         │
│                    │information needed by an installation   │
│                    │DLL in the form of a quoted string.     │
│                    │This information is passed as a         │
│                    │parameter to the installation DLL as    │
│                    │specified in the SSDLL or SSTERMDLL     │
│                    │keywords. For example:                  │
│                    │SSDLLINPUTPARMS="5, FILE.NAM, 1.1.0"    │
├────────────────────┼────────────────────────────────────────┤
│SSSELECT            │This optional keyword determines the    │
│                    │preselection of subsystems for          │
│                    │installation.  Five values are          │
│                    │supported:                              │
│                    │"ALWAYS" - This value specifies that the│
│                    │group will always be installed.  It is  │
│                    │the only valid value for group 0.       │
│                    │Groups with this value will not be      │
│                    │displayed in the installation main      │
│                    │selection window.                       │
│                    │"REQUIRED" - This value specifies that  │
│                    │the group will be preselected for       │
│                    │installation.  If the group had been    │
│                    │previously installed, it cannot be      │
│                    │unselected by the user if this          │
│                    │installation package is newer than the  │
│                    │installed version.  If the group had not│
│                    │been previously installed, it can be    │
│                    │unselected by the user.                 │
│                    │"VERSION" - This value specifies that   │
│                    │the group will be preselected only if it│
│                    │was previously installed and this       │
│                    │installation package is newer than the  │
│                    │installed version.  However, it can be  │
│                    │unselected by the user.                 │
│                    │"YES" - This value specifies that the   │
│                    │group will be preselected whether or not│
│                    │it was previously installed.  It can be │
│                    │unselected by the user. This is the     │
│                    │default.                                │
│                    │"NO" - This value specifies that the    │
│                    │group is never preselected but can be   │
│                    │selected by the user.                   │
│                    │"BASENEWER" - This value specifies that │
│                    │files belonging to this group will only │
│                    │be copied if the user's machine has no  │
│                    │package installed or if the package     │
│                    │installed is older than the current     │
│                    │package.                                │
│                    │"ONLYNEWER" - This value specifies that │
│                    │a user will not be able to install an   │
│                    │older version of a package on top of a  │
│                    │newer version. Files belonging to this  │
│                    │group will only be copied if the user   │
│                    │has an older version (or the same       │
│                    │version) installed.  If no version is   │
│                    │installed or if the version installed is│
│                    │higher than the one in the package, no  │
│                    │files will be copied.                   │
└────────────────────┴────────────────────────────────────────┘

Observe the following guidelines when you create or change a CONTROL.SCR subsystem definition:


[Back: CONTROL.SCR Header]
[Next: File List Control File]