DRIVER_NODE


typedef struct {
    struct _DRIVER_NODE FAR* lpNextDN;
    UINT Rank;
    UINT InfType;
    unsigned InfDate;
    LPSTR lpszDescription;
    LPSTR lpszSectionName;
    ATOM atInfFileName;
    ATOM atMfgName;
    ATOM atProviderName;
    DWORD Flags;
    DWORD dwPrivateData;
    LPSTR lpszDrvDescription;
    LPSTR lpszHardwareID;
    LPSTR lpszCompatIDs;
} DRIVER_NODE;

This strucure represents a driver which can be installed for a specific device.

lpNextDN

Pointer to the next driver node in a list.

Rank

The Rank match of this driver. Ranks go from 0 to n, where 0 is the most compatible.

InfType

Type of INF this driver cam from. This will be either INFTYPE_TEXT or INFTYPE_EXECUTABLE

InfDate

DOS date stamp of the INF file.

lpszDescription

Pointer to a the descriptrion of the device being supported by this driver.

lpszSectionName

Pointer to the name of INF install section for this driver.

atInfFileName

Global ATOM containing the name of the INF file.

atMfgName

Global ATOM containing the name of this driver's manufacture.

atProviderName

Global ATOM containing the name of this driver's provider.

Flags

Flags that control functions using this DRIVER_NODE

DNF_DUPDESC

This driver has the same device description from by more than one provider.

DNF_OLDDRIVER

Driver node specifies old/current driver

DNF_EXCLUDEFROMLIST

If set, this driver node will not be displayed in any driver select dialogs.

DNF_NODRIVER

Set if we want to install no driver e.g no mouse drv


dwPrivateData

Reserved

lpszDrvDescription

Pointer to a driver description.

lpszHardwareID

Pointer to a list of Plug-and-Play hardware IDs for this driver.

lpszCompatIDs

Pointer to a list of Plug-and-Play compatible IDs for this driver.