パートナー センターでの拡張 INF ファイルの作業
Windows ハードウェア デベロッパー センターで拡張 INF ファイルの配送ラベルを作成すると、他の申請と同様に共有および公開できます。 この記事では、これらのパッケージをパッケージ化、提出、公開するプロセスについて説明します。 拡張 INF の作成方法とインストール方法の詳細については、「拡張 INF ファイルの使用」を参照してください。
拡張 INF を Windows 更新プログラムに公開するための要件
拡張 INF を Windows 更新プログラムに公開するには、配送ラベルで [自動ドライバー プロモーション] チェックボックスをオンにする必要があります。 拡張 INF をオプションとして公開できない理由は、エンドユーザーが「ドライバーの更新」作業を開始するためにデバイス マネージャーで一覧されないためです。 これらのチェックボックスを表示するには、最初にドライバーフライティングにサインアップする必要があります。
Note
Windows 更新プログラムで拡張 INF を提供する場合、すべてのシステムで少なくとも RS3 2018 年 1 月 3 日 — KB4056892 (10.0.16299.192) が実行されている必要があります。
拡張 INF の提出と公開
このセクションでは、INFパッケージを送信して公開する方法について説明します。 一般的な間違いとよく寄せられる質問については、強調表示されている項目とFAQを参照してください。
重要
Microsoft では、拡張 INF ごとに個別の申請を作成し、基本ドライバーの申請のみを含む個別の申請を常に作成することをお勧めします。 ベース ドライバーと拡張 INF を 1 つの申請で公開すると、次の問題が発生します。
- パートナー センターによって、すべての出荷ラベルが "拡張ドライバー" として分類および評価されます。 拡張機能である項目を検索するには、デベロッパー センターの検索ボックスに「
@IsExtensionDriver:"True"
」と入力します。 - Windows Updateに公開された後、ユーザーはドライバーパッケージを複数回ダウンロードする必要がある場合があります。基本ドライバーがインストールされたときに1回、PnPが検出する適用可能な拡張機能ごとにもう一度行います。
提出パッケージの作成
基本ドライバーパッケージ
通常どおり、ベース ドライバーと拡張 INF を使用して Hardware Lab Kit (HLK) テストの実行を開始します。 HLK の結果は、すべてのパッケージ作成手順に使用されます。
拡張 INF テンプレート項目を Drivers フォルダーから削除し、基本ドライバー ファイルのみを HLK パッケージに追加し直します。
このHLKxパッケージを作成して署名し、ベースドライバーパッケージを作成します。
Note
ベース ドライバー パッケージは常に既存の拡張との下位互換性を保つようにする必要があります。
拡張INFパッケージ
ベース ドライバー パッケージ HLK テスト実行と同じ HLK 結果を使用して、[パッケージ]>[ドライバーを置き換える] の順に選択します。
拡張 INF を、参照するバイナリと一緒にドライバーのフォルダに追加します。 拡張 INF が複数ある場合は、ファイルを 1 つのみ追加します。
この新しいHLKパッケージを作成して署名します。 このパッケージは、拡張 INF パッケージです。
拡張 INF ごとにこのプロセスを繰り返し、毎回ドライバー フォルダの内容を削除します。
パートナー センターへのパッケージの提出
作成した各パッケージの新しい申請を作成し、ハードウェア デベロッパー センターにアップロードします。 その後、共有または公開するパッケージの配送先住所ラベルを作成します。 詳細については、「新しいハードウェア申請を作成する」および「発送ラベル付きドライバーの配布を管理する」を参照してください。
ExtensionID
ExtensionIDは、ドライバーの系列の識別とバージョン管理に使用される、生成するGUIDです。 これは、ハードウェアデバイスのパーツまたはパーツシリーズを記述し、それを送信したSellerIDに自動的に登録されます。 このSellerIDの所有者は、CHID管理と同様に、ExtensionIDの使用状況とマッピングを追跡する責任があります。
たとえば、新しいシステムパーツのExtensionIDを作成すると、次のようになります。
- ExtensionID の所有権は、SellerID に割り当てられます。
- パーツまたはパーツ シリーズを使用する組織のすべてのシステム プロジェクトは、同じ ExtensionID を共有します。
- ExtensionID は、パーツの寿命が尽きるまで変更されません。
Note
- SellerID に関連付けられていない ExtensionID を使用する場合は、パートナー センターによって申請が拒否され、その ExtensionID が既に別の組織に属していることが通知されます。
- 特定のデバイスでは、一意の ExtensionID 値ごとに 1 つの拡張 INF のみがインストールされます。 したがって、デバイスに複数の拡張 INF がある場合は、それぞれに新しい ExtensionID が必要になります。 これは、2 つの拡張 INF が異なる ExtensionID を持つ同じデバイスを対象とする場合、両方の拡張 INF が適用されることも意味します。 詳細については、「拡張 INF ファイルを使用する」を参照してください。
組織が別の組織のプロジェクトと送信を管理している場合は、次の点に注意してください。
- ExtensionIDの所有権は、送信を完了したSellerIDに割り当てられます。
- 別の組織のSellerIDを使用すると、そのExtensionIDを使用できます。
- 組織のSellerIDを使用するには、パーツまたはパーツシリーズに対して独自のExtensionIDを作成する必要があります。
拡張 INF の初期バージョンに対して新しい ExtensionID を生成します (つまり、拡張 INF をカスタマイズして初回申請する場合)。これには、新しいデバイスの新しい共有配送ラベルを受け取るときを含みます。 Visual Studio には、Tools > Create GUID に GUID 作成ユーティリティが含まれていますが、次のレジストリ形式と一致する場合は、任意のオンライン GUID 生成ツールが機能します。
すでに公開されている拡張 INF を更新する場合、ExtensionID を同じにして、DriverVer directive が指定するバージョンと日付をインクリメントします。 ドライバーの日付とドライバーのバージョンは、同じ ExtensionID を持つ複数の拡張 INF を区別するために (この順序で) 使用されます。
拡張 INF を公開する
拡張 INF 申請を公開するには、「Windows 更新プログラムにドライバーを公開する」の手順を実行します。 両方の自動ドライバー促進オプションがオンになっていることおよび、拡張 INF に特定のターゲットがあることを確認します。
これらのドライバー促進オプションが表示されない場合、ドライバー フライティングにサインアップする必要がある場合があります。
すべての拡張 INF は、ドライバー フライティング プロセスを経て、Windows 更新プログラムに配信されます。 フライト化が成功すると、ファイルが小売システムで利用できるようになります。 Windows Insiders プログラムに参加すると、この段階でドライバーにすばやくアクセスできます。
拡張INFのターゲット設定とランク付けの違い
拡張機能は特定のデバイス向けのカスタマイズであるため、常に対象を絞る必要があります。 拡張 INF ターゲットを使用する場合は、次のガイドラインに従います。
- 拡張 INF ファイルには、可能であれば 4 つの部分からなるハードウェア ID (HWID) が必要です。
- CHID は、4 つの部分からなる HWID を持つだけでなく、拡張 INF の配送ラベルに追加できます。
- 配送ラベルには、4 つの部分の HWID がないパーツやパーツ シリーズの配送ラベルに CHID ターゲティングが必要です。
このターゲット情報は、Windows Update (WU) 経由の配信中に 拡張 INF を正確に評価するために不可欠です。 WUがドライバーを評価するには、次の2つの段階があります。
- WUが特定のシステムに適用されるドライバーの一覧を作成する場合の適用ステージ。
- Windows PnPとWUが一覧からインストールするドライバーを決定するランク付けステージ。
一般に、拡張 INF のランク付けとターゲット設定には、いくつかの重要な原則があります。
拡張 INF の ExtensionID は、適用性に使用されるのではなく、系列とバージョン管理の識別のためだけに使用されます。
WU は、該当する各拡張 ID に対して最高ランクの拡張ドライバーを提供し、PnP はそれをインストールします。
拡張ドライバーは、DriverVer directive に含まれている日付とバージョンによってランク付けされます。 これは、WUとPnPの両方で使用されます。 詳細については、「INF バージョンのセクション」および「INF DriverVer directive」を参照してください。
PnP と WU では、拡張ドライバーに関して、機能または識別子のスコア (つまり、2 つの部分と 4 つの部分) は考慮されません。
WU で拡張ドライバーをランク付けする際は、CHID 情報は使用されません (つまり、CHID が対象としているその他の拡張ドライバーを "ブロック" できません。)
Windowsオペレーティングシステム内でのドライバーの選択とターゲット設定の詳細については、 「拡張INFファイルの使用」 を参照してください。
よく寄せられる質問
ドライバーの開発
ベース ドライバーを更新するたびに、ExtensionID を変更する必要がありますか?
いいえ。ベースドライバーを更新するときは、同じ拡張IDを保持する必要があります。 ExtensionIDは、バージョンの比較とドライバーの系列の識別に使用されます。 ドライバーの系列内で変更しないでください。
製造
製造の目的で IHV 提供の拡張 INF をその ExtensionID と併用できますか?
いいえ。 拡張機能のサービス面を所有する場合は、製造時に独自の拡張 INF と ExtensionID を使用する必要があります。
ドライバーの更新
ベース ドライバー パッケージが更新および公開されるたびに、更新された 拡張 INF を Windows 更新プログラムに公開する必要はありますか?
いいえ、しないでください。 基本ドライバーパッケージは、常に既存の拡張機能と下位互換性がある必要があります。
更新済みのベース ドライバーが公開され、エンド ユーザーのシステムに適用されるとどうなりますか?
ベース ドライバーの更新プログラムが適用されると、現在インストールされている拡張 INF が評価され、必要に応じて適用されます。 拡張 INF がインストールされていない場合、Windows 更新プログラムは適用可能な最新バージョンをダウンロードします。
OS を最新バージョンに更新するときに更新された拡張 INF または ExtensionID を公開する必要がありますか?
いいえ、既存の ExtensionID と拡張 INF は引き続き機能します。
2 つのシステムのカスタマイズが同じ場合、2 つのシステムで同じ拡張 INF を共有できますか?
はい。 複数のシステムで同じ設定を使用する場合、またはより広範なデバイス セット間で設定をカスタマイズする場合は、1 つの拡張 INF で十分です。 該当する 4 つの部分から成るハードウェア ID を拡張 INF に追加します。 詳細については、「拡張 INF ファイルを使用する」を参照してください。