DIF_INSTALLDEVICEFILES

DIF_INSTALLDEVICEFILES请求允许安装程序参与复制文件以支持设备或为设备创建文件列表。 设备文件包括所选驱动程序的文件、任何设备接口以及任何共同安装程序的文件。

发送时

系统提供的设备安装组件 出于各种原因发送此 DIF 请求。 某些设备安装组件在DIF_REGISTER_COINSTALLERS、DIF_INSTALLINTERFACES和DIF_INSTALL_DEVICE之前发送此 DIF 请求,以确保可以在继续安装之前复制所有相关文件。 某些设备安装组件省略此 DIF 请求,并期望在处理这三个 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)

另请参阅