Components and Files Used for Network Component Installation
The following components and files are used to install network drivers:
One or more information (INF) files
A required class installer and optional co-installer for miniport drivers
INetCfg for protocol and filter drivers
An optional notify object
In addition to one or more of the above components, a vendor also optionally supplies the following files:
One or more device driver image (.sys) files and driver library (.dll) files
A driver catalog file
A text-mode setup information file (txtsetup.oem)
INF files
Each network component must have an information (INF) file that the network class installer uses to install the component. Network INF files are based on the common INF file format. For more information about the INF file format, see INF File Sections and Directives.
For detailed information about creating INF files for network components, see Creating Network INF Files.
Starting with Windows OS build version 25319, you can create a network driver package that can be executed from the Driver Store. An INF that is using 'run from Driver Store' means that the INF uses DIRID 13 to specify the location for driver package files on install.
You can't install a driver package through the network configuration interfaces and use the driver store feature on older Windows versions. To successfully install the driver package in this scenario, you need to have a minimum OS build number of 25319. For more information, see Manufacturer Section in a Network INF File.
INetCfg
Currently, NDIS protocol and filter drivers are installed by calling into the INetCfg
family of Network Configuration Interfaces. For example, to install or remove network components, a driver writer calls into the INetCfgClassSetup interface.
Driver writers can either call into this interface programmatically or they can use netcfg.exe, which calls INetCfg
on their behalf.
For more information about protocol driver installation, see NDIS protocol driver installation.
For more information about filter driver installation, see NDIS Filter Driver Installation.
Notify object
A software component, such as a network protocol, client, or service, can have a notify object. A notify object can display a user interface, notify the component of binding events so that the component can exercise some control over the binding process, and conditionally install or remove software components. On older versions of Windows you can't create a driver package with a notify object that is executed from the Driver Store. To successfully install a driver package in this scenario, you need to have a minimum OS build number of 25341. For more information about notify objects, see Notify Objects for Network Components.
A network adapter can't have a notify object. It can have co-installers. For more information about co-installers, see Writing a Co-installer.
Vendor-supplied files
A vendor supplies one or more drivers for the device, which typically consists of a driver image (.sys) file and a driver library (.dll) file. A vendor may also supply an optional driver catalog file. A vendor gets a digital signature by submitting its driver package to the Windows Hardware Quality Lab (WHQL) for testing and signing. WHQL returns the package with a catalog (.cat) file. The vendor must list the catalog file in the INF file for the device.
An optional text-mode setup information file (txtsetup.oem) may also be supplied by the vendor. If a network device is required to boot the machine, the driver or drivers for the device must be included in the operating system kit or the vendor of such a device must provide a txtsetup.oem file. The txtsetup.oem file contains information that is used by the system setup components to install the device during text-mode setup.