步骤 2:已选择设备的驱动程序包
检测并识别新设备后,Windows 及其设备安装组件请执行以下步骤:
- Windows 搜索设备的匹配 驱动程序包 。 有关此步骤的详细信息,请参阅 搜索驱动程序包。
- Windows 从一个或多个驱动程序包中为设备选择最合适的驱动程序包 () 。 有关此步骤的详细信息,请参阅 选择驱动程序。
搜索驱动程序包
使用硬件标识符 (ID) 以及设备的总线驱动程序报告的兼容 ID,Windows 会搜索与该设备匹配的驱动程序包。 如果设备上的硬件 ID 或兼容 ID 与驱动程序包 INF 文件的 INF 模型部分条目中的 ID 匹配,驱动程序包将匹配设备。
例如,在 Windows 8 及更高版本中,如果用户将 WLAN 适配器插入 USB 集线器的端口,则会发生以下步骤:
USB 集线器驱动程序为 WLAN 适配器创建硬件 ID 和兼容 ID 的列表后,Windows 首先在 驱动程序存储 中搜索设备的匹配 驱动程序包 。 如果在驱动程序存储中找到驱动程序包,Windows 会在设备上安装它。 这允许设备快速开始工作。
在单独的进程中,Windows 会搜索Windows 更新和 DevicePath,以获取比从驱动程序存储安装的驱动程序更好的匹配驱动程序。 如果找到驱动程序,则会将驱动程序暂存到驱动程序存储中,然后安装到设备上。
有关 驱动程序包 搜索过程的详细信息,请参阅 Windows 在何处搜索驱动程序。
注意
从 Windows Vista 开始,操作系统始终从驱动程序存储安装驱动程序包。 如果在另一个位置找到匹配的驱动程序包,则 Windows 先将程序包暂存到驱动程序存储中,然后再在设备上安装驱动程序包。
选择驱动程序
一旦 Windows 为设备找到一个或多个匹配 的驱动程序包 ,Windows 就会按照以下步骤选择最佳驱动程序包:
如果 Windows 只找到一个匹配的驱动程序包,则会在设备上安装该驱动程序包。
如果 Windows 找到多个匹配的驱动程序包,则 Windows 首先为每个驱动程序包中的每个匹配项分配一个排名值。 如果只有一个驱动程序具有最低的排名值,它会在设备上安装该驱动程序包。
有关排名过程的详细信息,请参阅 Windows 如何排名驱动程序。
如果多个驱动程序包具有相同的最低排名值,Windows 将使用驱动程序日期和版本为设备选择最佳驱动程序包。 日期和版本由包含在驱动程序包的 INF 文件中的 INF DriverVer 指令指定。
Windows 为设备选择驱动程序包后,Windows 将按照 步骤 3:安装适用于设备的驱动程序中所述安装驱动程序包。