WdfPreDeviceInstallEx 函数 (wdfinstaller.h)
[仅适用于 KMDF]
在非即插即用 (PnP) 驱动程序的安装程序创建驱动程序的内核模式服务之前,共同安装程序的 WdfPreDeviceInstallEx 函数执行共同安装程序可能需要的任何操作。
语法
ULONG WdfPreDeviceInstallEx(
[in] LPCWSTR InfPath,
[in, optional] LPCWSTR InfSectionName,
[in] PWDF_COINSTALLER_INSTALL_OPTIONS ClientOptions
);
参数
[in] InfPath
指向以 null 结尾的宽字符字符串的指针,该字符串包含驱动程序 INF 文件的目录路径。 驱动程序的安装程序可以通过调用 GetCurrentDirectory 获取此字符串,如Microsoft Windows SDK中所述。
[in, optional] InfSectionName
指向以 null 结尾的宽字符字符串的指针,该字符串在驱动程序的 INF 文件中包含 Wdf-install-section 名称。 有关此名称的详细信息,请参阅 使用 KMDF 共同安装程序。 如果此指针为 NULL,则共同安装程序将 WdfSection 用作名称。
[in] ClientOptions
指向调用方分配 的WDF_COINSTALLER_INSTALL_OPTIONS类型结构的指针,该结构包含驱动程序指定的安装选项。
返回值
如果操作成功,WdfPreDeviceInstallEx 将返回ERROR_SUCCESS。 否则,函数返回 Winerror.h 中定义的附加ERROR_XXX 值之一。
注解
非 PnP 设备的基于框架的驱动程序的安装程序必须在安装程序调用 CreateService 之前调用 WdfPreDeviceInstall 或 WdfPreDeviceInstallEx。
若要获取共同安装程序的 WdfPreDeviceInstallEx 函数的地址,安装程序必须在安装程序调用 LoadLibrary 以加载共同安装程序后调用 GetProcAddress。
如果共同安装程序确定必须重启计算机才能完成驱动程序安装 (通常是因为以前) 安装了较旧版本的框架,则 WdfPreDeviceInstallEx 函数使您能够控制何时或是否提示用户重新启动计算机,如下所示:
- 如果安装程序将 WDF_COINSTALLER_INSTALL_OPTIONS 结构的 ShowRebootPrompt 成员设置为 TRUE,则 WdfPreDeviceInstallEx 会通知 PnP 管理器必须重启计算机,并且 PnP 管理器会提示用户需要重启。 将 ShowRebootPrompt 成员设置为 TRUE 等效于调用 WdfPreDeviceInstall。
- 如果安装程序将 WDF_COINSTALLER_INSTALL_OPTIONS 结构的 ShowRebootPrompt 成员设置为 FALSE,则 WdfPreDeviceInstallEx 不会通知 PnP 管理器需要重启。 相反,函数返回 ERROR_SUCCESS_REBOOT_REQUIRED。 安装程序可以确定何时或是否重新启动计算机,
示例
有关使用 WdfPreDeviceInstallEx 函数的代码示例,请参阅 NONPNP 示例的安装程序。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
最低 KMDF 版本 | 1.9 |
标头 | wdfinstaller.h (包括 Wdfinstaller.h) |
Library | 由 KMDF 共同安装程序库导出的 N/A (。有关共同安装程序库的文件名的信息,请参阅使用 KMDF 共同安装程序。) |