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 之前调用 WdfPreDeviceInstallWdfPreDeviceInstallEx

若要获取共同安装程序的 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。 安装程序可以确定何时或是否重新启动计算机,
有关非 PnP 设备的基于框架的驱动程序的 WdfPreDeviceInstallEx 函数和安装程序的详细信息,请参阅 安装非 PnP 驱动程序。 有关 CreateServiceGetProcAddressLoadLibrary 的详细信息,请参阅 Microsoft Windows SDK 文档。

示例

有关使用 WdfPreDeviceInstallEx 函数的代码示例,请参阅 NONPNP 示例的安装程序。

要求

要求
目标平台 通用
最低 KMDF 版本 1.9
标头 wdfinstaller.h (包括 Wdfinstaller.h)
Library 由 KMDF 共同安装程序库导出的 N/A (。有关共同安装程序库的文件名的信息,请参阅使用 KMDF 共同安装程序。)

另请参阅

WdfPostDeviceInstall

WdfPreDeviceInstall