Windows 3.11 Driver Setup File Extension

This article explains the specific file extension used to install hardware drivers in Microsoft Windows 3.11, how these setup files functioned, and the associated files required to complete device installation.

In Microsoft Windows 3.11, the primary file extension used for driver setup and installation was .INF. When installing third-party hardware drivers, Windows required an information file, almost universally named OEMSETUP.INF, located on the driver installation diskette or directory.

The Role of the .INF File

The .INF (Information) file was a plain-text configuration script. It provided the Windows Setup program and the Control Panel with the instructions needed to properly install the hardware. An OEMSETUP.INF file typically contained:

  • Device Descriptions: Human-readable names of the hardware devices displayed in selection menus.
  • File Copy Lists: The specific driver files, dynamic link libraries (DLLs), and helper files to copy to the Windows SYSTEM directory.
  • Configuration Directives: Necessary modifications to system configuration files, such as adding lines to SYSTEM.INI or WIN.INI.
  • Port and IRQ Settings: Default input/output (I/O) addresses, interrupt requests (IRQs), and memory configurations.

Associated Driver Files

While the .INF file handled the setup process, the drivers themselves used different extensions:

  • .DRV: The core 16-bit executable driver files (e.g., display, mouse, sound, or printer drivers).
  • .386: 32-bit Virtual Device Drivers (VxDs) used in 386 Enhanced Mode for low-level hardware control.

How Windows 3.11 Processed Driver Setup

To install a new driver, a user navigated to the relevant applet in the Windows Control Panel (such as Drivers, Printers, or Display) and selected the option to install an unlisted or updated driver. Windows would prompt the user for the disk path, search specifically for the OEMSETUP.INF file, parse the hardware profiles defined inside, and execute the installation routine based on the user's hardware selection.