Click to Rate and Give Feedback
MSDN
MSDN Library
Windows Driver Kit: Getting Started with Windows Drivers
Components of a Driver Package

Supporting a device on a Windows operating system typically involves the following components:

  • The device
  • Driver files
  • Installation files
  • Other files

A brief description of each component follows.

The Device

If you're involved in designing and building a new device, follow industry hardware standards. Building devices that conform to industry standards can streamline your driver development process as well as reduce support costs. Not only do test suites exist for such devices, but in many cases generic drivers exist for standard types, so you might not need to write a new driver.

For more information about industry standards and specifications, see the ms791679.internet_link_sm(en-us,MSDN.10).gifWindows Hardware Developer Central (WHDC) Web site.

Driver Files

The driver is the part of the package that provides the I/O interface for a device. Typically, a driver is a dynamic-link library with the .sys file name extension. Long file names are allowed, except for boot drivers. When a device is installed, Setup copies the .sys file to the %windir%\system32\drivers directory.

The software required to support a particular device depends on the features of the device and the bus or port to which it connects. Microsoft ships drivers for many common devices and nearly all buses with the operating system. If your device can be serviced by one of these drivers, you might need to write only a device-specific minidriver. A minidriver handles device-specific features on behalf of a system-supplied driver. For some types of devices, even a minidriver is not necessary. For example, modems can typically be supported with just installation files.

Installation Files

In addition to the device and the driver, a driver package also contains one or more of the following files, which provide driver installation:

  • A device setup information file (INF file)

    An INF file contains information that the system Setup components use to install support for the device. Setup copies this file to the %windir%\inf directory when it installs the device. Every device must have an INF file.

    For more information, see Supplying an INF File.

  • A driver catalog (.cat) file

    A driver catalog file contains a cryptographic hash of each file in the driver package. Windows uses these hashes to verify that the package was not altered after it was published. To ensure that the catalog file is not altered, it should be digitally signed. For information about signing drivers, see Signing Drivers for Public Release and Signing Drivers During Development and Test.

  • One or more co-installers

    A co-installer is a Microsoft Win32 DLL that assists in device installation on Windows NT–based operating systems. For example, an IHV might supply a co-installer to provide Finish Install wizard pages or to copy additional INF files. For more information about co-installers, see Installation Component Overview.

    Co-installers are not supported on Windows 98 or Windows Me.

Other Files

A driver package can also contain other files, such as a device installation application, a device icon, and so forth. For more information, see the following topics:

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker