Windows 95 INF Driver Setup File Format
When Microsoft released Windows 95, it fundamentally changed how hardware drivers and software components were installed by standardizing the Setup Information (INF) file format. This article examines the structure and role of the Windows 95 INF driver specification script, detailing its underlying plain-text configuration syntax, its primary structural directives, and how the operating system utilized these scripts to deliver native Plug and Play driver installation.
The Plain-Text INI Architecture
Windows 95 driver specification scripts utilized the INF
(Information) file format, stored with a .inf
extension. At its core, the INF format is a specialized plain-text ASCII
file that heavily borrows from the standard Initialization (INI) file
structure established in earlier versions of Windows and MS-DOS.
Rather than executing proprietary binary code to configure hardware, Windows 95 parsed these human-readable text files to determine which driver files were required, where they should be placed on the disk, and what modifications needed to be applied to the system registry.
Core Sections of a Windows 95 INF Script
An INF file is organized into distinct, bracketed sections containing keys, directives, and values. Windows 95 evaluated these sections in a structured order to register hardware:
[Version]: Defines the target operating system and basic catalog attributes. For Windows 95, the signature key was universally defined asSignature="$CHICAGO$", where "Chicago" was the development codename for the operating system.[Manufacturer]: Identifies the hardware vendor and directs the setup parser to one or more model-specific sections.- Device Models Section: Links specific hardware identity strings, such as Plug and Play (PnP) hardware IDs or PCI/ISA vendor and device codes, to installation instructions.
- Install Sections (
[Install]or[DDInstall]): Specifies the operational tasks required for setup. Directives in this section typically includeCopyFiles(files to duplicate),AddReg(registry entries to create), andDelReg(obsolete entries to clean up). [SourceDisksNames]and[SourceDisksFiles]: Maps the individual driver files to specific media labels or installation paths, facilitating driver installation from floppy disks or CD-ROMs.[Strings]: Located at the bottom of the script, this section stores localized text and centralizes variables. Tokens wrapped in percent signs (e.g.,%DeviceDesc%) throughout the INF file are replaced with the definitions declared here.
How Windows 95 Utilized INF Files
Prior to Windows 95, installing device drivers in Windows 3.1 often
required running separate vendor-supplied executable installers or
manually editing SYSTEM.INI and
CONFIG.SYS.
Windows 95 integrated INF parsing directly into its Setup engine and
Device Manager. When the Plug and Play subsystem detected a new device,
it gathered the hardware ID, scanned the C:\WINDOWS\INF
directory for an INF script containing a matching ID, and automated the
driver deployment. The INF format eliminated the need for third-party
installation binaries for simple driver deployment, establishing a
unified standard that continued to evolve into modern editions of
Windows.