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: