Windows 3.11 Local Printer Driver Installation

In Microsoft Windows 3.11, installing a local printer driver relied heavily on physical floppy disks, system configuration files, and the Windows Control Panel. Windows managed this process by reading structured setup information files, prompting the user to swap specific installation disks, decompressing driver binaries into the system directory, and updating the central WIN.INI file to make the hardware accessible to applications.

Accessing the Printers Control Panel

To initiate the installation of a local printer, users navigated to the Program Manager, opened the "Main" program group, and launched the "Control Panel." Inside, double-clicking the "Printers" icon brought up the printer management dialog. This interface handled all configuration, driver installation, and port routing for local output devices.

Selecting Drivers: Built-In vs. Third-Party Disks

Windows 3.11 handled driver disks through two distinct paths depending on whether the driver was bundled with the operating system or provided directly by the hardware manufacturer:

  • Built-in Drivers: Clicking the "Add >>" button expanded the window to show a master list of supported printers. If the user selected a model from this list and clicked "Install," Windows requested one of the original operating system installation floppies (typically Disk 4, 5, or 6, depending on whether it was the standard Windows 3.1 or Windows for Workgroups 3.11 release).
  • Third-Party Disks (Unlisted Printers): If a printer came with its own disk from the manufacturer, the user selected "Install Unlisted or Updated Printer." Windows then displayed a prompt asking for the drive path—defaulting to A:\ or B:\.

The Role of INF Files and File Extraction

When accessing a driver disk, Windows 3.11 searched the specified path for a file named OEMSETUP.INF (or CONTROL.INF for the built-in system disks). This plain-text configuration file contained the critical metadata required for installation:

  1. Driver Identification: Maps printer model names to their corresponding driver files.
  2. File Lists: Lists all required .DRV files, fonts, and auxiliary help files.
  3. Disk Labels: Specifies which disk volume label contains the required files if the driver spanned multiple floppies.

Files on both Windows setup floppies and vendor disks were frequently compressed to save space, identifiable by an underscore as the final character in their extension (such as .DR_ or .DL_). During the read process, Windows invoked its internal decompression routines (or called EXPAND.EXE) to unpack the files and copy the resulting uncompressed .DRV driver files directly into the C:\WINDOWS\SYSTEM directory.

Port Assignment and INI Configuration

Once the driver files were copied from the floppy disk to the hard drive, Windows 3.11 required the user to assign the printer to a physical port. Users selected the printer, clicked "Connect," and chose an available local parallel or serial port—most commonly LPT1:.

After the port was selected, Windows finalized the installation by writing the configuration into the WIN.INI file located in the root C:\WINDOWS directory:

  • Under the [devices] section, Windows added an entry pairing the printer name with its driver file and designated port (e.g., HP LaserJet 4=HPPCL5MS,LPT1:).
  • Under the [PrinterPorts] section, Windows stored timeout parameters, retry limits, and device drivers for the port.
  • The [windows] section was updated with a device= line if the user marked the newly installed device as the default system printer.

Once these disk-reading, file-copying, and configuration steps were completed, the local printer became instantly available to all Windows-based software without requiring a system reboot.