次の方法で共有


DIF_INSTALLDEVICEFILES

DIF_INSTALLDEVICEFILES要求を使用すると、インストーラーはファイルのコピーに参加してデバイスをサポートしたり、デバイスのファイルの一覧を作成したりできます。 デバイス ファイルには、選択したドライバー、デバイス インターフェイス、および共同インストーラーのファイルが含まれます。

送信時

システム提供のデバイス インストール コンポーネントは、さまざまな理由でこの DIF 要求を送信。 一部のデバイス インストール コンポーネントは、DIF_REGISTER_COINSTALLERS、DIF_INSTALLINTERFACES、およびDIF_INSTALL_DEVICEの前にこの DIF 要求を送信して、インストールを続行する前に関連するすべてのファイルを確実にコピーできるようにします。 一部のデバイス インストール コンポーネントでは、この DIF 要求が省略され、これらの 3 つの DIF 要求の処理中にファイルがコピーされることを想定しています。 さらに、一部のデバイス インストール コンポーネントは、この DIF 要求を送信して、デバイスに関連付けられているファイルの一覧を取得します。

誰が処理する

クラス共同インストーラー 処理可能
デバイス共同インストーラー 処理しない
クラス インストーラー 処理可能

インストーラーの入力

DeviceInfoSet の

サポート ファイルをコピーするデバイスを含む デバイス情報セット にハンドルを提供します。

DeviceInfoData

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

デバイスのインストール パラメーター

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

DI_NOVCP フラグが設定されている場合、デバイスのインストール パラメーターには有効な FileQueue ハンドルが含まれており、この DIF 要求を処理するインストーラーは、このキューにファイル操作を追加し、キューをコミットしません。

クラスのインストール パラメーター

何一つ

インストーラーの出力

デバイスのインストール パラメーター

インストーラーは、FileQueue(存在する場合) を変更できます。

インストーラーの戻り値

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

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

クラス インストーラーが既定のハンドラーの直接呼び出しを含め、この要求を正常に処理した場合、クラス インストーラーはNO_ERRORを返し、SetupDiCallClassInstaller が既定のハンドラーを再度呼び出さない する必要があります。

手記

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

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

クラス インストーラーでエラーが発生した場合、インストーラーは適切な Win32 エラー コードを返し、SetupDiCallClassInstaller 既定のハンドラーを呼び出さない必要があります。

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

SetupDiInstallDriverFiles の

インストーラー操作

DIF_INSTALLDEVICEFILES要求に応答して、インストーラーは必要なファイル操作を指定します。 たとえば、インストーラーは、デバイスのインストールに必要なコピーする別のファイルを指定できます。 DI_NOVCP フラグが設定されている場合、インストーラーは、デバイスのインストール パラメーターの FileQueue にファイル操作を追加することによってファイル操作を指定します。 ファイル キューの使用方法と、SetupInstallFilesFromInfSectionなどのファイル キュー機能のリファレンス ページについては、Microsoft Windows SDK を参照してください。

デバイスのインストール中にこの DIF 要求が送信され、インストーラーから Microsoft Win32 エラー コードが返された場合、Windows はインストールを停止します。

システム提供のデバイス インストール コンポーネント この DIF 要求を送信して、デバイスに関連付けられているファイルの一覧を取得する場合、コンポーネントはファイル キューを取得しますが、キューはコミットしません。

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

必要条件

   
バージョン Microsoft Windows 2000 以降
ヘッダ Setupapi.h (Setupapi.h を含む)

関連項目