CryptCATAdminAddCatalog を使用したカタログ ファイルのインストール

インストール プログラムでは、CryptCATAdminAddCatalog やその他の CryptCATAdminXxx暗号化関数を使用して、システム コンポーネントとドライバー データベースに カタログ ファイル をプログラムでインストールできます。

インストール プログラムでは、次の方法で Windows 7 および .NET Framework 4.0 用の Microsoft Windows ソフトウェア開発キット (SDK) を使用する必要があります。

  • インストール プログラムのソース ファイルには、次のヘッダー (.h) ファイルを含める必要があります。

    • Mscat.h。さまざまな CryptCATAdminXxx 関数のプロトタイプと構造体を定義します。
    • Softpub.hCryptCATAdminXxx 関数で使用されるさまざまなデータ構造と GUID を定義します。
  • インストール プログラムは Wintrust.libにリンクする必要があります。

これらの CryptCATAdminXxx 暗号化関数を使用するには、インストール プログラムによって次の処理が行われます。

  1. CryptCATAdminAcquireContext を呼び出して、カタログ管理者コンテキストへのハンドルを取得します。 アプリケーションは、 pgSubsystem 入力パラメーターを GUID DRIVER_ACTION_VERIFYへのポインターに設定することで、サブシステムを識別します。 この GUID は Softpub.h で 定義されています。

  2. CryptCATAdminAddCatalog を呼び出して、カタログ ファイル をシステム コンポーネントとドライバー データベースに追加します。 インストール プログラムは、手順 1 で取得したカタログ管理者コンテキストへのハンドル、カタログ ファイルの完全修飾パスへのポインター、およびカタログ ファイルのコピーをデータベースにインストールするために関数が使用するカタログ ファイルの名前へのポインターを提供します。 この関数は、データベースに追加されたカタログ ファイルのカタログ情報コンテキストへのハンドルを返します。

  3. CryptCATAdminReleaseCatalogContext を呼び出して、カタログ ファイルのカタログ情報コンテキストへのハンドルを解放します。 インストール プログラムは、手順 1 で取得したカタログ管理者コンテキストと、手順 2 で返されたカタログ情報コンテキストへのハンドルを提供します。

  4. CryptCATAdminReleaseContext を呼び出して、カタログ管理者コンテキストにハンドルを解放します。 アプリケーションは、手順 1 で取得したカタログ管理者コンテキストにハンドルを提供します。