次の方法で共有


DIF_REGISTER_COINSTALLERS

DIF_REGISTER_COINSTALLERS 要求により、インストーラーはデバイス共同インストーラーの登録に参加できます。

送信時

デバイスのインストールを完了する前に。

処理するユーザー

クラス共同インストーラー

処理できる

デバイス共同インストーラー

取り扱いなし

クラスインストーラー

処理できる

インストーラーによる入力

DeviceInfoSet
共同インストーラーを 登録するデバイスを含むデバイス情報セットへのハンドルを提供します。

DeviceInfoData
デバイス情報セット内のデバイスを識別する SP_DEVINFO_DATA 構造体へのポインターが提供されます。

デバイスインストールパラメーター
DeviceInfoData に関連付けられているデバイス インストール パラメーター (SP_DEVINSTALL_PARAMS) があります。

クラスインストールパラメーター
なし

インストーラーによる出力

なし

インストーラーの戻り値

共同インストーラーは、NO_ERROR、ERROR_DI_POSTPROCESSING_REQUIRED、または Win32 エラー コードを返すことができます。

クラス インストーラーがこの要求を正常に処理し、その後 SetupDiCallClassInstaller が既定のハンドラーを呼び出す必要がある場合、クラス インストーラーは ERROR_DI_DO_DEFAULT を返します。

既定のハンドラーの直接呼び出しを含め、クラス インストーラーがこの要求を正常に処理した場合、クラス インストーラーは NO_ERROR を返す必要があり、その後 SetupDiCallClassInstaller は既定のハンドラーをもう一度呼び出しません。

注: クラス インストーラーは既定のハンドラーを直接呼び出すことができますが、クラス インストーラーは既定のハンドラーの操作を置き換えようとしないでください。

既定のハンドラーの呼び出しの詳細については、「既定の DIF コード ハンドラーの呼び出し」を参照してください。

クラス インストーラーでエラーが見つかった場合、インストーラーは適切な Win32 エラー コードを返す必要があり、SetupDiCallClassInstaller は既定のハンドラーを呼び出しません。

既定の DIF コードハンドラー

SetupDiRegisterCoDeviceInstallers

インストーラー操作

DIF_REGISTER_COINSTALLERS 要求に応じて、インストーラーはデバイスの共同インストーラーの一覧を変更する可能性があります。 たとえば、インストーラーは、デバイスの分析に基づくデバイスのデバイス固有の共同インストーラーをプログラムで登録または削除する可能性があります。

DI_NOFILECOPY フラグが設定されていない限り、この DIF 要求を処理するインストーラーは、共同インストーラーに必要なファイルをコピーする必要があります。

DI_NOFILECOPY フラグがクリアされていても、DI_NOVCP フラグが設定されている場合、インストーラーは指定されたファイル キューにファイル操作をエンキューする必要がありますが、キューをコミットすることはできません。

インストーラーから Win32 エラー コードが返された場合、Windows はインストールを中止します。

DIF コードの詳細については、「DIF コードの処理」を参照してください。

要件

バージョン

Microsoft Windows 2000 以降のバージョンの Windows でサポートされています。

ヘッダー

Setupapi.h (Setupapi.h を含む)

関連項目

SetupDiRegisterCoDeviceInstallers

SP_DEVINFO_DATA

SP_DEVINSTALL_PARAMS