Table of contents
TOC
Collapse the table of content
Expand the table of content

Feature Score

Last Updated: 7/30/2016

A driver rank is formatted as 0xSSGGTHHH, where the value of 0xSS000000 is the signature score, the value of 0x00GG0000 is the feature score, and the value of 0x0000THHH is the identifier score.

The feature score provides a way to rank drivers based on the features that a driver supports. For example, feature scores might be defined for a device setup class that distinguishes between drivers based on class-specific criteria. The feature score supplements the identifier score, making it possible for driver writers to more easily and precisely distinguish between different drivers for a device that is based on well-defined criteria.

Microsoft defines feature score usage for particular device classes. Feature score is not required, so many device classes will not have feature score usage specified. In this case, the default feature score (0xFF) is expected, and will be assigned in the absence of a feature score defined in the INF of a driver.

When Microsoft does not explicitly require feature score for a device class, the driver should:

  • Not define a feature score in the driver INF (Windows will default to 0xFF)

    or

  • Explicitly define a feature score of 0xFF in the driver INF

The feature score for a driver is set by the INF FeatureScore Directive in the INF DDInstall section of the INF file that installs a device. The feature score is set as follows:

[DDInstallSectionName]
. . .
FeatureScore=featurescore

where DDInstallSectionName is the name of the DDInstall section and featurescore is a single-byte hexadecimal number between 0x00 and 0xFF. Windows computes the feature score for a driver based on the featurescore value of the FeatureScore directive:

feature score = (featurescore * 0x10000)

If the INF FeatureScore Directive is not specified in the INF file, Windows uses a default feature score is 0x00FF0000 for the driver, which indicates that there is no preference based on the features of the driver. The lower the feature score, the better the rank, where the best feature score is 0x00000000.

For example, the following sets the feature score of a driver to 0x00FD0000:

[DDInstallSectionName]
. . .
FeatureScore=xFD

For more information about driver ranking, see How Windows Ranks Drivers.

© 2017 Microsoft