The master control file, CONTROL.SCR, specifies a FILELIST keyword which identifies the name of a file list control file that lists all the installable files in the installation package. The file list control file also contains the following additional information:
The following is an example of the file list control file (FILELIST.TK2) located in the \TOOLKIT\SAMPLES\MM\SHORTCF subdirectory. The first nonblank, noncomment line is a count of the number of files (or file name lines) in the file.
/***********************************************************************//* This file contains install information. Comments are delimited */ /* as these comments are. Blank lines are ignored. Non-blank lines */ /* will be parsed and extraneous characters will cause errors. First */ /* non-comment line must be the total number of files to be installed. */ /***********************************************************************/ /* all files on the install disk(s) are listed below. Other */ /* information is also given, as follows: */ /* */ /* Disk# - The number of the disk on which the file resides. */ /* (Ignored if installing from CD-ROM). These are sorted */ /* from 0 to the number of disks, ascending. */ /* */ /* Group# - The logical group to which the file belongs. Group */ /* starts at 0. */ /* */ /* Dest# - The destination subdirectory into which the file will be */ /* copied. Dest# starts at 0. */ /* */ /* Source #- The installation disk(s) subdirectory where the file */ /* resides. */ /* */ /* FileName - The base filename. */ /* */ /*sourcedir="\\" = 4 */ /*sourcedir="\\MCISTRNG\\" = 11 */ /* */ /* destindir="\\MMOS2\\" = 0 */ /* destindir="\\MMOS2\\INSTALL\\" = 4 */ /* destindir="\\MMOS2\\MMTOOLKT\\SAMPLES\\MCISTRNG\\" = 11 */ /* */ /* groups */ /* 0 = Base */ /* - 11 = MCI String Test */ /* */ /***********************************************************************/ /* Total number of entries is 20. This must be the first parameter other*/ /*than comments*/ /***********************************************************************/ 20 /*It is a good practice to make groups and list the amount of files in /*them (9 files)*/ /*A comment can not be the last line in a filelist.*/ /* mmtoolkt\samples\cf 9 41K */ 0 0 11 4 "CONTROL.SCR" 0 0 11 4 "FILELIST.TK2" 0 0 11 4 "TLKSTRN.SCR" 0 0 11 4 "TLKBASE.SCR" 0 0 4 4 "TLKSTRN.SCR" 0 0 4 4 "TLKBASE.SCR" 0 0 4 4 "MCISTRNG.ICO" 0 0 4 4 "MMTOOLKT.ICO" 0 0 11 4 "TOOLKIT.CH" /* 11 files */ /* mmtoolkt\samples\mcistrng 11 197K */ 0 11 11 11 "mcistrng.c" 0 11 11 11 "mcistrng.h" 0 11 11 11 "mcistrng.rc" 0 11 11 11 "mcistrng.dlg" 0 11 11 11 "mcistrng.def" 0 11 11 11 "makefile" 0 11 11 11 "UMB.DAT" 0 11 11 11 "mcistrng.exe" 0 11 11 11 "mcistrng.hlp" 0 11 11 11 "mcistrng.ipf" 0 11 11 11 "mcistrng.ico"
The following table describes the columns in the file list control file.
┌─────────────────────────┬──────────────────────────────────────────────────┐ │Column │Description │ ├─────────────────────────┼──────────────────────────────────────────────────┤ │Media# │Specifies the number of the media unit (diskette │ │ │or CD) where the file is stored. The units are │ │ │numbered starting from 0. This number will be │ │ │used for all installation media except for the │ │ │hard disk. The Media# column must be sorted in │ │ │ascending order. A media unit does not have to be│ │ │filled (there can be unused space on any numbered │ │ │unit). │ ├─────────────────────────┼──────────────────────────────────────────────────┤ │Group or subsystem# │Specifies the group to which the file belongs. │ │ │The group or item number must be a positive │ │ │integer, with numbering starting at 0 (the groups │ │ │are defined in CONTROL.SCR by the SSGROUP │ │ │keyword). This number is used to determine which │ │ │files belong to a item selected for installation. │ ├─────────────────────────┼──────────────────────────────────────────────────┤ │Destination# │Specifies the destination subdirectory where the │ │ │file will be copied. The destination number is │ │ │defined in the CONTROL.SCR file by the DESTINDIR │ │ │keyword. This field must always be a defined │ │ │number (for example, 14 for the \MMOS2\DLL path). │ │ │If you specify a DESTINDIR statement in the master│ │ │control file, you only have to specify the │ │ │corresponding group number (for example, 1). │ ├─────────────────────────┼──────────────────────────────────────────────────┤ │Source# │Specifies the path name of the source file. The │ │ │source number is defined in the CONTROL.SCR file │ │ │by the SOURCEDIR keyword. This field must always │ │ │be defined with a number (for example, 1 for the │ │ │\LIB path). │ ├─────────────────────────┼──────────────────────────────────────────────────┤ │File name │Specifies the base file name, which must be in │ │ │double quotes. For example, "MINSTALL.EXE". │ └─────────────────────────┴──────────────────────────────────────────────────┘