Like the INITIAL.INF and PARTIAL.INF files, the TXTSETUP.SIF file is a text file containing sections marked by section titles in square brackets. The TXTSETUP.SIF file specifies what files are to be copied and what changes are to be made to an existing Registry during the initial, text mode, phase of Setup. The structure of this file allows conditional file copies.
For example, certain files might need to be copied only during an upgrade from an earlier version of Windows NT, and not during a fresh installation. Or, a file might need to be copied only if a version of the file already exists in the target directory. What Setup should do in each case is specified in the TXTSETUP.SIF file. In the case of an upgrade, sections in this file also specify changes to the existing Registry. In addition, the TXTSETUP.SIF file specifies supported hardware, files that should be deleted if found on the existing system, and options for booting.
The sections that you most likely need to modify in order to customize Setup are listed in the following table, in the order they are found in the TXTSETUP.SIF file.
Section | Specifies |
[Files.DeleteOnUpgrade] | Files used in a previous version of Windows NT that are to be deleted before the new version is installed. |
[Files.BackupOnUpgrade] | Files used in a previous version of Windows NT that are to be backed up before the new version is installed. |
[Files.BackupOnOverwrite] | Files that are to be backed up (if they exist) before overwriting them during Setup. The files are only backed up if they are to be overwritten. |
[Files.UpgradeWin31] | Files used with a Microsoft Windows 3.1 product (including Windows for Workgroups) that are also used by Windows NT. These files will not be replaced with Windows NT files by the same name during Setup if you are installing Windows NT into a Windows 3.1 directory. |
[WinntDirectories] | Numbers assigned to each subdirectory of the Windows NT root directory. These numbers are used in other sections to locate the individual files. |
[SetupData] | Required resources, such as available disk space; also options to be used during setup, such as debugging. |
[Media] | Short name assigned to each floppy disk in the Windows NT installation disk set or to the Windows NT installation CD. |
[Files] | All files in the installation set for this platform. |
There are also sections for manipulating the Registry. Generally, it is best to make changes to the Registry only through graphical interfaces such as the Administrative tools and Control Panel icons, and avoid working with the Registry directly. However, if you routinely use Regedit32 to change Registry entries after installation, you can use these sections to incorporate the changes during Setup. For more information, see "Using the TXTSETUP.SIF File to Update the Registry," later in this chapter.
The [Files.DeleteOnUpgrade] section of the TXTSETUP.SIF file lists the files that you might have installed in a previous version of Windows NT that need to be deleted when you upgrade to the current version.
The format of this section is file, dir where file is the filename and dir is the subdirectory of the Windows NT root directory where the file will be found. The subdirectory is specified with a number, as defined in the [WinntDirectories] section.
The [Files.BackupOnUpgrade] section of the TXTSETUP.SIF file lists the files that you might have installed in a previous version of Windows NT that need to be backed up before you upgrade to the current version.
The format of this section is file, dir, newname where file is the filename, dir is the subdirectory of the Windows NT root directory where the file will be found, and newname is the name you want to give the backup copy of the file. The subdirectory is specified with a number, as defined in the [WinntDirectories] section.
The [Files.BackupOnOverwrite] section of the TXTSETUP.SIF file lists the files that you might have installed in a previous version of Windows NT that need to be backed up before they are overwritten during an upgrade to the current version of Windows NT. If the files are not overwritten during the upgrade process, they are not backed up.
The format of this section is file, dir, newname where file is the filename, dir is the subdirectory of the Windows NT root directory where the file will be found, and newname is the name you want to give the backup copy of the file. The subdirectory is specified with a number, as defined in the [WinntDirectories] section.
The [Files.UpgradeWin31] section of the TXTSETUP.SIF file lists the files that might exist in an existing installation of Windows 3.1 or related operating system (such as Windows for Workgroups 3.1) that are also used by Windows NT. The files are listed in this section if they are not to be replaced with Windows NT files by the same filename during setup.
The format of this section is file, dir where file is the filename and dir is the subdirectory of the Windows NT root directory where the file will be found. The subdirectory is specified with a number, as defined in the [WinntDirectories] section.
The [WinntDirectories] section of the TXTSETUP.SIF file assigns a number to the Windows NT root directory and each of its subdirectories. These numbers are used in other sections of the TXTSETUP.SIF file to specify the locations of files. If you want to add a subdirectory for files specific to your corporation, you can specify it in this section.
The format of this section is n = directory, where n is an integer and directory is the path, relative to the Windows NT root directory. The following is an example of a typical [WinntDirectories] section:
[WinntDirectories] 1 = \ 2 = system32 3 = system32\config 4 = system32\drivers
The [SetupData] section of the TXTSETUP.SIF file supplies data used by Setup. This includes required resources, such as available disk space, and debugging options.
The following is an example of a typical [SetupData] section:
[SetupData] ProductType = 0 MajorVersion = 3 MinorVersion = 50 FreeDiskSpace = 80000 FreeSysPartDiskSpace = 750 UpgradeFreeDiskSpace = 10000 UpgradeFreeSysPartDiskSpace = 500 DefaultPath=\WINNT35 LoadIdentifier = "Windows NT Workstation Version 3.5" BaseVideoLoadId = "Windows NT Workstation Version 3.5 [VGA mode]" OsLoadOptions = "/nodebug" AllowFloppySetup = 1 RequiredMemory = 7864320
The lines that you might need to modify in the [SetupData] section are as follows:
FreeDiskSpace
Specifies the amount of free disk space that must be available for a fresh installation of Windows NT. If you add files to your custom installation, increase this value by the number of bytes in the files you add. If you exclude files from your custom installation, decrease this value by the number of bytes in the files you exclude.
UpgradeFreeDiskSpace
Specifies the amount of free disk space that must be available for an upgrade from an earlier version of Windows NT. If you add files to your custom installation, increase this value by the number of bytes in the files you add. If you exclude files from your custom installation, decrease this value by the number of bytes in the files you exclude.
DefaultPath
Specifies the location of the system root directory of Windows NT relative to the drive the files are installed on. If you want your custom installation to be written to a directory other than \WINNT35, change the specification on this line.
LoadIdentifier
Specifies the text that appears during setup to identify the system that is being installed. You can change the text in quotes to describe your custom installation.
BaseVideoLoadId
Specifies the text that appears when the installation is using the /BASEVIDEO option. This applies only when installing on x86 computers.
OsLoadOptions
Specifies debugging options, which are enclosed in double quote marks. The options you specify here apply only to text mode setup. To have one or more of these options applied after text mode setup (that is, during Graphical mode setup and any other time the computer is started), add the line OsLoadOptionsVar = /option [/option...]. For OsLoadOptionsVar, as for OsLoadOptions, the options you specify must be enclosed in double quote marks.
The options for OsLoadOptionsVAR are the same as those for OsLoadOptions and are listed in the following table:
Option | Description |
/NODEBUG | The default; it means that no debugging information is collected or transmitted during installation. |
/DEBUG | The customary switch to enable debugging. The last standard COM port found is used, unless a port is specified with the /DEBUGPORT=COMx switch. |
/DEBUGPORT=COMx | Sends debug output to the specific COM port. |
/BAUDRATE=nnnnn | Specifies the baud rate at which data is sent through the COM port for remote debugging using a modem. The default is 19200. |
/NoSerialMice | Disables the serial mouse detection on certain COM ports. It is mostly used to exclude ports used by the uninterruptible power supply (UPS) system. The detection signal causes some UPS units to power down, thereby turning off the computer. If you need to use this switch, you might also want to add it to the BOOT.INI file, as described in Chapter 18, "Troubleshooting." You can use multiple /NoSerialMice switches. The format is as follows: /NoSerialMice=[COMx | COMx,COMy,COMz,...] If /NoSerialMice is specified without parameters, serial mouse detection is disabled on all the serial ports. If /NoSerialMice=COMx is specified, serial mouse detection is only disabled on COMx. If /NoSerialMice=COMx,COMy,COMz ... is specified, serial mouse detection is disabled on each of the specified ports. |
AllowFloppySetup
Specifies whether the installation must be from a CD or whether floppy disk sets can be used. To prevent installations from being made using floppy disk sets, set this value to 0.
The [Media] section of the TXTSETUP.SIF file is used to assign a code to each of the floppy disks in the Windows NT installation disk set and to assign the dx code to the Windows NT installation CD. If you add a disk to the installation disk set, add it to the end of this section. The code you assign to it can then be used in other sections of the TXTSETUP.SIF file to indicate to Setup where to find the files you have placed on this disk. Files that you add to a distribution share will all be identified as being on dx.
The [Files] section of the TXTSETUP.SIF file lists all the files for the platform. Each file in this section is listed in the following format:
filename = dx, disk id, [boot floppy], install directory, conditions for upgrade [,conditions for fresh install[,new file name]]
where the dx parameter is read when installing from the CD. It is defined in the [Media] section of this file, which immediately precedes the [Files] section. This parameter must always be present.
Disk id is used when installing from a set of floppy disks, and specifies the floppy disk on which the file is found. It also is defined in the [Media] section.
Boot floppy specifies the bootable floppy disk on which the file can be found. If the file is not on any bootable floppy disk, this field is blank. This parameter is primarily used to specify a SCSI miniport driver.
Install directory is the directory to which the file will be copied, as defined in the [WinntDirectories] section. All definitions in the [WinntDirectories] section are subdirectories of the Windows NT root directory. You are prompted for this directory during the text mode stage of Setup.
Conditions for upgrade is a single digit that specifies whether the file is to be copied during the text mode portion of setup when upgrading from an earlier version of Windows NT. The possible values for conditions for upgrade are listed in the following table:
Code | Action |
0 | Copy always |
1 | Copy only if the file exists in the install directory |
2 | Do not copy if the file exists in the install directory |
3 | Do not copy |
Conditions for fresh install is a single digit that specifies whether the file is to be copied during the text mode portion of setup when installing on a computer that has no earlier version of Windows NT. This value is optional; if it is not included, the file is not copied. The possible values are the same as those for conditions for upgrade.
New file name is the name the file will be renamed to when it is copied. If this parameter is omitted, the file will not be renamed.
The following is an example of a typical line in the [Files] section of the TXTSETUP.SIF file:
ntkrnlmp.exe = dx,d4,_1,2,3
This line specifies that the file, NTKRNLMP.EXE, is found on the CD or on floppy disk d4 (as defined in the [Media] section). It is also found on boot floppy disk _1, which is also defined in the [Media] section. It is to be installed in directory 2, as defined in the [WinntDirectories] section. Since the line in the [WinntDirectories] section for directory 2 reads as 2 = system32, the file is installed in the \SYSTEM32 subdirectory of the Windows NT root directory. The 3 at the end of the line means the file is not copied during text mode setup when upgrading from an earlier version of Windows NT. Since the last two parameters are missing, this line does not cause the file to be copied during text mode setup when installing on a computer that has no version of Windows NT installed, and the file is not renamed when copied.
Note Lines in the TXTSETUP.SIF file beginning with a semicolon (;) are comments and ignored by Setup. Remember that you must use the correct symbol for the file you are modifying; otherwise, Setup fails.