DIF_ALLOW_INSTALL
DIF_ALLOW_INSTALL请求询问设备的安装程序 Windows 是否可以继续安装该设备。
发送时
在为设备选择驱动程序之后,但在安装设备之前。
谁处理
类共同安装程序 |
可以处理 |
设备共同安装程序 |
不应处理 |
类安装程序 |
可以处理 |
安装程序输入
DeviceInfoSet
为包含 该设备的设备信息集 提供句柄。
DeviceInfoData
提供指向 SP_DEVINFO_DATA 结构的指针,该结构标识设备信息集中的设备。
设备安装参数
设备安装参数 (SP_DEVINSTALL_PARAMS) 与 DeviceInfoData 相关联。
安装程序输出
安装程序返回值
共同安装程序可能会返回NO_ERROR或 Win32 错误。 共同安装程序不应为此 DIF 请求返回ERROR_DI_POSTPROCESSING_REQUIRED。
类安装程序通常返回ERROR_DI_DO_DEFAULT或 Win32 错误代码。
此 DIF 请求的典型 Win32 错误代码包括ERROR_DI_DONT_INSTALL和ERROR_NON_WINDOWS_NT_DRIVER。
注意 类安装程序和共同安装程序不应ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION,因为这会导致设备安装失败。 如果设备安装需要用户交互,类安装程序和共同安装程序应支持 完成安装操作。
默认 DIF 代码处理程序
无
安装程序操作
在响应DIF_ALLOW_INSTALL请求时,安装程序会确认 Windows 是否可以安装设备。
如果安装程序确定所选驱动程序不正确, (例如,如果驱动程序是仅限 Windows 9x 的驱动程序,在基于 NT 的操作系统) 上无法正常工作,或者确定所选驱动程序已知有 bug,则安装程序可能会使此请求失败。
如果在设备安装参数中设置了DI_QUIETINSTALL标志,并且安装程序在设备安装期间必须显示 UI,则安装程序可能会失败此请求。 但是,这种故障很少见,因为安装程序通常可以提供任何 UI 页面来响应DIF_NEWDEVICEWIZARD_FINISHINSTALL请求。 在这种情况下,UI 不会阻止安装程序接替设置了静默标志的DIF_ALLOW_INSTALL请求。 但是,如果安装程序无法将其 UI 限制为完成安装情况,则如果设置了DI_QUIETINSTALL标志,安装程序必须失败此 DIF 请求。 例如,如果安装程序调用显示 UI 的供应商提供的代码,则安装程序可能具有此限制。
如果安装程序失败此 DIF 请求,Windows 将停止安装。
如果安装程序失败了此 DIF 请求,并且设备安装参数中未设置DI_QUIETINSTALL,安装程序应显示一个对话框,其中包含一条消息,说明设备未安装的原因。
有关 DIF 代码的详细信息,请参阅 处理 DIF 代码。
要求
版本 |
在 Microsoft Windows 2000 及更高版本的 Windows 中受支持。 |
标头 |
Setupapi.h (包括 Setupapi.h) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈