Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

Driver is not installed when you try to install a third-party device driver on a computer that is running Windows Vista or Windows Server 2008


View products that this article applies to.

Symptoms

On a computer that is running Windows Vista or Windows Server 2008, you try to install the driver of your third-party device. However, after the installation, the third-party driver is not installed.

This problem occurs with some drivers, depending on the "target system version" section in the driver's installation (.inf) file. For example, this problem occurs with the driver for the new dual-port network adapter from Intel.

↑ Back to the top


Cause

This problem occurs because the system parses the INF Manufacturer section of the driver incorrectly. Specifically, the parsing logic does not consider the ProductType modifier and the SuiteMask modifier in the TargetOSVersion decoration.

The Microsoft Developer Network (MSDN) Web site describes the TargetOSVersion decoration as follows:
nt[Architecture][.[OSMajorVersion][.[OSMinorVersion][.[ProductType][.SuiteMask]]]]
The ProductType modifier is a number that represents one of the following VER_NT_xxxx flags that are defined in the Winnt.h file:
  • 0x0000001 (VER_NT_WORKSTATION)
  • 0x0000002 (VER_NT_DOMAIN_CONTROLLER)
  • 0x0000003 (VER_NT_SERVER)
For example, an .inf file has the following sections:
[Intel.NTx86.6.0.1]                   ; workstation-only
DeviceB=DeviceA_Install, PCI\VEN_8086&DEV_000A

[Intel.NTx86.6.0]
DeviceB=DeviceB_Install, PCI\VEN_8086&DEV_000B
When the .inf file is parsed, the ProductType modifier and the SuiteMask modifier are not considered. Therefore, the wrong hardware identifier (hardware-id) may be indexed in the driver store. In this example, hardware-id PCI\VEN_8086&DEV_000A, intended for workstation systems, is indexed incorrectly in the driver store for a server system. Depending on which section is processed last, hardware-id PCI\VEN_8086&DEV_000B, intended for use on both workstation systems and server systems, is not indexed. Therefore, a "driver not found" or "incorrect version" error is returned, and the system reverts to the system inbox driver.

↑ Back to the top


Resolution

Hotfix information

Important Windows Vista and Windows Server 2008 hotfixes are included in the same packages. However, only one of these products may be listed on the �Hotfix Request� page. To request the hotfix package that applies to both Windows Vista and Windows Server 2008, just select the product that is listed on the page.

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site: Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix on a computer that is running Windows Vista, you must have Windows Vista Service Pack 1 or Windows Vista Service Pack 2 installed on the computer. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
935791� How to obtain the latest Windows Vista service pack
No prerequisites are required for Windows Server 2008-based computers.

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

File information

The global version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

Windows Vista and Windows Server 2008 file information notes

  • The files that apply to a specific product, SR_Level (RTM, SPn), and service branch (LDR, GDR) can be identified by examining the file version numbers as shown in the following table.
    Collapse this tableExpand this table
    VersionProductSR_LevelService branch
    6.0.6000.16xxxWindows VistaRTMGDR
    6.0.6000.20xxxWindows VistaRTMLDR
    6.0.6001.18xxxWindows Vista and Windows Server 2008SP1GDR
    6.0.6001.22xxxWindows Vista and Windows Server 2008SP1LDR
    6.0.6002.18xxxWindows Vista and Windows Server 2008SP2GDR
    6.0.6002.22xxxWindows Vista and Windows Server 2008SP2LDR
  • Service Pack 1 is integrated into the original release of Windows Server 2008.
  • The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately. MUM and MANIFEST files, and the associated security catalog (.cat) files, are critical to maintaining the state of the updated component. The security catalog files (attributes not listed) are signed with a Microsoft digital signature.
For all supported x86-based versions of Windows Server 2008 and of Windows Vista
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Setupapi.dll6.0.6001.224311,591,29612-May-200915:42x86
Setupapi.mofNot Applicable3,68901-Apr-200919:31Not Applicable
Setupapi.dll6.0.6002.221341,591,80812-May-200915:41x86
Setupapi.mofNot Applicable3,68904-Apr-200906:03Not Applicable
For all supported x64-based versions of Windows Server 2008 and of Windows Vista
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Setupapi.dll6.0.6001.224311,924,09612-May-200916:06x64
Setupapi.mofNot Applicable3,68901-Apr-200917:29Not Applicable
Setupapi.dll6.0.6002.221341,925,63212-May-200915:41x64
Setupapi.mofNot Applicable3,68903-Apr-200921:33Not Applicable
Setupapi.dll6.0.6001.224311,591,29612-May-200915:42x86
Setupapi.mofNot Applicable3,68901-Apr-200919:31Not Applicable
Setupapi.dll6.0.6002.221341,591,80812-May-200915:41x86
Setupapi.mofNot Applicable3,68904-Apr-200906:03Not Applicable
For all supported Itanium-based versions of Windows Server 2008
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Setupapi.dll6.0.6001.224313,080,19212-May-200915:46IA-64
Setupapi.mofNot Applicable3,68901-Apr-200917:29Not Applicable
Setupapi.dll6.0.6002.221343,080,19212-May-200915:33IA-64
Setupapi.mofNot Applicable3,68903-Apr-200921:33Not Applicable
Setupapi.dll6.0.6001.224311,591,29612-May-200915:42x86
Setupapi.mofNot Applicable3,68901-Apr-200919:31Not Applicable
Setupapi.dll6.0.6002.221341,591,80812-May-200915:41x86
Setupapi.mofNot Applicable3,68904-Apr-200906:03Not Applicable

↑ Back to the top


Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

↑ Back to the top


More information

After you apply this hotfix, you can revert to the pre-hotfix behavior by setting the following registry entry:
Subkey: HKEY_LOCAL_MACHINE\System\Setup
Entry: InfModelsDoNotParseProdTypeSuiteMask
Type: REG_DWORD
When this registry entry is absent or is set to 0, the system parses the ProductType and SuiteMask modifiers. When this registry entry is set to any value other than 0, the system does not parse these two modifiers and therefore follows the pre-hotfix behavior.

For more information about the INF Manufacturer section, visit the following Microsoft Developer Network Web site:
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684� Description of the standard terminology that is used to describe Microsoft software updates

↑ Back to the top


Keywords: kbautohotfix, kbexpertiseinter, kbsurveynew, kbbug, kbfix, kbhotfixserver, kbqfe, KB970480

↑ Back to the top

Article Info
Article ID : 970480
Revision : 2
Created on : 7/3/2009
Published on : 7/3/2009
Exists online : False
Views : 348