ドライバー パッケージの選択プロセスの概要
Windows はドライバー パッケージをドライバー ノードとして表します。これには、ファイル、サービス、レジストリ エントリなど、デバイスのすべてのソフトウェア サポートが含まれます。 デバイスのサービスには、ファンクション ドライバーと、上位レベルおよび下位レベルのデバイス フィルター ドライバーが含まれます。
一部のデバイスには、そのデバイス専用に設計されたベンダー提供のドライバー パッケージ、またはデバイス ファミリをサポートするように設計されたドライバー パッケージが必要な場合があります。 ただし、他のデバイスは、デバイスのファミリまたは特定 のデバイス セットアップ クラスのすべてのデバイスをサポートするシステム提供のドライバー パッケージによって駆動できます。 Windows では、デバイスに最も近いドライバー パッケージが選択されます。 Windows でこのようなドライバー パッケージが見つからない場合は、一般的なドライバー パッケージから選択されます。
Windows がドライバー パッケージを検索する方法
Windows は、デバイスに一致するドライバー パッケージを特定の場所で検索します。 次の条件に該当する場合、ドライバー パッケージはデバイスと一致します。
デバイスのバス ドライバーによって報告されるハードウェア識別子 (ID) または互換性 ID の 1 つが、ドライバー パッケージの INF ファイルの INF Models セクションエントリの hw-id または互換性 ID 文字列と一致します。
一致するエントリを含む INF Models セクションの TargetOSVersion 装飾は、デバイスをインストールするオペレーティング システムのバージョンに適用されます。
TargetOSVersion デコレーションの詳細については、「プラットフォーム拡張機能とオペレーティング システムのバージョン の組み合わせ」を参照してください。
Windows が一致するドライバーを検索する場所の詳細については、「Windows がドライバーを検索する場所」を参照してください。
Windows のドライバー パッケージのランク付け方法
Windows は、該当する 各ドライバー パッケージ 内のすべての一致の一覧を作成し、各一致をランクに割り当てます。 ドライバー パッケージの INF Models セクションエントリにデバイスで一致する複数の行がある場合、1 つのドライバー パッケージにデバイスに対して複数の一致が含まれる場合があります。 Windows は、0 以上の整数値を持つ各ドライバー パッケージのランクに一致することを表します。
ドライバー パッケージのランキング方法の詳細については、「Windows のドライバー パッケージのランキング方法」をご覧ください。
Windows Vista 以降、Windows では、ドライバー パッケージがデジタル署名されているかどうかに基づいてドライバー パッケージもランク付けされます。 Windows は、デジタル署名に基づいてドライバー パッケージを次のようにランク付けします。
AllSignersEqual グループ ポリシーが無効になっている場合、Windows は、Authenticode 署名で署名されたドライバー パッケージよりも高い Microsoft 署名で署名されたドライバー パッケージをランク付けします。 このランク付けは、Authenticode 署名で署名されたドライバー パッケージが、他のすべての点でデバイスに適している場合でも発生します。
AllSignersEqual グループ ポリシーが有効になっている場合、Windows はデジタル署名されたすべてのドライバー パッケージを均等にランク付けします。
Note
Windows 7 以降では、 AllSignersEqual グループ ポリシー が既定で有効になっています。 Windows Vista および Windows Server 2008 では、 AllSignersEqual グループ ポリシーは既定で無効になっています。 IT 部門は、AllSignersEqual グループ ポリシーを有効または無効にすることで、既定のランク付け動作をオーバーライドできます。
Windows 署名機関の署名には、次のものが含まれます。
プレミアム Windows Hardware Quality Labs (WHQL) 署名と標準 WHQL 署名
受信トレイ ドライバー パッケージの署名
Windows Sustained Engineering (Windows SE) の署名
ドライバー パッケージのデバイス セットアップ クラスの LowerLogoVersion 値と同じかそれ以降の Windows バージョンの WHQL 署名
Windows のドライバー パッケージの選択方法
Windows では、デバイスに 最適なドライバー パッケージ の一致が最も低いランク値で選択されます。
ただし、1 つのデバイスに複数の同じランクのドライバー パッケージの最適な一致がある場合、Windows はドライバー パッケージの日付とバージョンを使用してドライバーを選択します。 ドライバーの日付とバージョンは、ドライバー パッケージの INF ファイルに含まれている INF DriverVer ディレクティブによって指定されます。
Windows では、次の条件を使用して、デバイスのドライバー パッケージの一致を選択します。
Windows では、デバイスに 最適なドライバー パッケージ の一致が最も低いランク値で選択されます。
ランクが等しいドライバー パッケージの一致の場合、Windows は最新の日付を持つドライバー パッケージを選択します。
ランクと日付が等しいドライバー パッケージの場合、Windows は最も高いバージョンのドライバー パッケージを選択します。
ランク、日付、バージョンが等しいドライバー パッケージの場合、Windows は任意のドライバー パッケージを選択できます。
注意
ドライバー パッケージの日付は、バージョンよりもランク付けの優先順位が高くなりますが、ドライバー パッケージに変更がある場合は、バージョンと日付の両方を更新することをお勧めします。 詳細については、 INF ファイル の名前付けとバージョン管理に関するベスト プラクティスを参照してください。