Share via


インストールの完了アクションの実装

Note

このセクションで説明する機能は、ユニバーサル ドライバー パッケージまたはモバイル ドライバー パッケージではサポートされていません。 「ユニバーサル INF ファイルの使用」を参照してください。

インストーラー (クラス インストーラー、クラス共同インストーラー、またはデバイス共同インストーラー) は、完了インストールアクションを提供します。 インストールの完了アクションでは、実行可能プログラムの実行、プロセスの作成、スレッドの作成、デバイス ドライバーのインストールの完了インストール プロセスでのコードの実行を行うことができます。

インストールの完了操作を実装するには、次の手順を実行します。

  1. インストーラーが DIF_NEWDEVICEWIZARD_FINISHINSTALL DIF コードを処理し、次のいずれかのエラー コードを返すときに、DI_FLAG Standard Edition X_FINISHINSTALL_ACTION フラグを設定します。

    • 完了インストール ウィザード ページのないクラス インストーラーの場合はERROR_DI_DO_DEFAULTします。
    • NO_ERROR、完了インストール ウィザード ページを含むクラス インストーラーか、完了インストール ウィザード ページの有無に関係なく共同インストーラーを使用する場合に使用します。
  2. DIF_FINISHINSTALL_ACTION 要求を処理するときに、インストールの完了操作を実行します。

    インストーラーは、次の表のいずれかのエラー コードを返します。

    エラー コード 意味

    ERROR_DI_DO_DEFAULT

    クラス インストーラー: クラス インストーラーは、インストールの完了操作を正常に実行し、Windows に既定の処理を実行するよう要求しています。 また、完了インストール アクションがない場合は、クラス インストーラーがこのエラー コードを返す必要があります。

    デバイスまたはクラスの共同インストーラー: 共同インストーラーは、このエラー コードを返しません。

    NO_ERROR

    クラス インストーラー: クラス インストーラーは、インストールの完了アクションを正常に実行しました。 Windows では、既定の処理を実行しないでください。

    デバイスまたはクラスの共同インストーラー: 共同インストーラーは、完了インストールアクションを正常に実行したか、完了インストールアクションを実行しません。

    Microsoft Win32 エラー

    インストーラーでエラーが発生しましたが、インストールの完了操作をもう一度試す必要があります。 Win32 エラー コードを返す場合は、デバイスが次回列挙されるときに、Windows が別の完了インストール プロセスを実行して、インストールの完了操作を完了する必要があることを示します。

メモ インストールの完了操作が失敗し、もう一度試行しない場合、クラス インストーラーは ERROR_DI_DO_DEFAULT を返し、デバイスまたはクラスの共同インストーラーは NO_ERROR を返します。

完了インストール アクションを開発する方法については、「 Finish-Install Actions を実装するためのガイドライン 」を参照してください。完了インストール アクションを実装する方法を示すサンプル コードについては、次のトピックを参照してください。

コード例: クラス インストーラーでのインストール完了アクション

コード例: 共同インストーラーでのインストール完了アクション