Share via


非 PnP ドライバー用のカタログ ファイルの作成

MakeCat ツールを使用して、非 PnP ドライバーのカタログ ファイルを作成できます。

Note

INF ファイルを含んだドライバー パッケージカタログ ファイルを作成するときには、Inf2Cat ツールを使用して、カタログ ファイルを作成します。 Inf2Cat は、パッケージの INF ファイル内で参照されているドライバー パッケージ内のすべてのファイルを自動的に含めます。 Inf2Cat ツールの使用方法の詳細については、「Inf2Cat を使用してカタログ ファイルを作成する」を参照してください。

カタログ ファイルを作成するには、まず、カタログ ヘッダー属性とファイル エントリを記述したカタログ定義ファイル (..cdf) を手動で作成する必要があります。 このファイルが作成されたら、MakeCat ツールを実行して、カタログ ファイルを作成できます。

カタログ ファイルの作成

PnP 以外のドライバーのカタログ ファイルを作成するには、次の手順に従います。

  1. テキスト エディターを使用して、作成するカタログ ファイルの名前、属性、およびカタログ ファイルに一覧表示されるファイルの名前をリストする .cdf ファイルを作成します。

  2. MakeCat コマンドライン ツールを使用して、カタログ ファイルを作成します。 MakeCat ツールの詳細については、MakeCat の使用に関する Web サイトを参照してください。

  3. ドライバーがインストールされるコンピューターにカタログ ファイルをインストールします。

MakeCat ツールの概要

MakeCat ツールは、.cdf ファイルを処理するときに次のことを行います。

  • .cdf ファイルによって定義されたカタログ ファイルの属性を検証し、属性をカタログ ファイルに追加します。

  • .cdf ファイル内にリストされている各ファイルの属性を確認し、属性をカタログ ファイルに追加します。

  • リストされた各ファイルの暗号化ハッシュ (拇印) を生成します。

  • 各ファイルの拇印をカタログ ファイルに格納します。

次の MakeCat コマンドを使用して、カタログ ファイルを作成します。

MakeCat -v CatalogDefinitionFileName.cdf

ここで:

  • -v オプションは、実行および警告メッセージをプリントするように MakeCat を構成します。

  • CatalogDefinitionFileName.cdf は、カタログ定義ファイルの名前です。

次の例は、Good.cdf という名前の一般的なカタログ定義ファイルの内容を示しています。 カタログ化されるパッケージには、File1File2 という 2 つのファイルが含まれています。 結果のカタログ ファイルには、Good.cat という名前が付けられます。

[CatalogHeader]
Name=Good.cat
PublicVersion=0x0000001
EncodingType=0x00010001
CATATTR1=0x10010001:OSAttr:2:6.0
[CatalogFiles]
<hash>File1=File1
<hash>File2=File2

この例で使用するオプションを次に示します。 これらのオプションの詳細については、MakeCat Web サイトを参照してください。

Name=Good.cat
カタログ ファイルの名前 (Good.cat) を指定します。

PublicVersion=0x0000001
カタログ ファイルのバージョンを指定します。

EncodingType=0x00010001
拇印の生成に使用されるメッセージ エンコードの種類を指定します。 値 0x00010001 は、PKCS_7_ASN_ENCODING | X509_ASN_ENCODING のメッセージ エンコードの種類を指定します。

CATATTR1=0x10010001:OSAttr:2:6.0
カタログ ファイルの属性を指定します。 追加の属性を指定するには、個別の CATATTR オプションを使用する必要があり、各オプションには一意の数字をサフィックスとして割り当てます。 たとえば、CATATT1 を使用して 1 つのカタログ ファイル属性を指定し、CATATT2 を使用して別のカタログ ファイル属性を指定します。

この例では、CATATTR1 オプションを使用して指定された属性の値は次のとおりです。

0x10010001
属性を次のように指定します。

  • 0x10000000 - 認証済み属性 (符号付き、拇印に含まれます)。

  • 0x00010000 - 属性はプレーン テキストで表されます。

  • 0x00000001 - 属性は名前と値のペアです。

OSAttr:2:6.0
OSAttr 属性は、署名要件がドライバー パッケージと互換性があるターゲットの Windows バージョンを指定します。 属性の値は、次を指定します。

  • 2 は、カタログ ファイルが Windows オペレーティング システムの NT ベースのバージョンと互換性があることを指定します。

  • 6.0 は、カタログ ファイルが Windows Vista と互換性を持つことを指定します。 注:ドライバー パッケージが複数の Windows バージョンと互換性がある場合は、個別の CATATTR オプションを使用して、Windows バージョンごとに OSAttr 属性を指定する必要があります。

<hash>File1=File1
カタログ ファイルを介して参照されるファイル File1 の参照タグを指定します。 値 <hash>File1 を指定すると、タグはファイルの暗号化ハッシュ (拇印 ) になります。

<hash>File1=File2
カタログ ファイルを介して参照されるファイル File2 の参照タグを指定します。 値 <hash>File2 を指定すると、タグはファイルの拇印になります。

次の例は、対応するカタログ定義ファイル Good..cdf からカタログ ファイルGood.cat を生成する方法を示しています。 Makecat は、Good.catFile1 および File2 と同じフォルダーに保存します。

MakeCat -v Good.cdf