生成 IddCx 1.4 驱动程序

由于在 Windows 10 版本 1809 的 IddCx 1.3 中进行了更改,针对 IddCx v1.4 构建的间接显示驱动程序 (IDD) 可以使用运行时检查在 Windows 10 版本 1809 上运行,以验证 IddCx 1.4 中的 DDI 更改是否可用于该系统。 有关详细信息,请参阅为多个版本的 Windows生成 WDF 驱动程序。

从 IddCx 1.4 开始,可以执行以下操作,生成 IddCx 驱动程序以安装在 Windows 10 版本 1803 及更高版本上。 注意:此驱动程序不会在 Windows 10 1607 到 1709 版本上加载。

  • 使用 WDK 驱动程序工具包中的 IddCx 1.4 标头和库生成Windows驱动程序 (链接) 。
  • 在IDDCX_MINIMUM_VERSION_REQUIRED环境中将值设置为 3。 这会告知 OS 驱动程序生成的最低 IddCx 版本,在这种情况下为 1.3。
  • 初始化 IddCx 结构时,请使用相应的 XXX_INIT宏。 例如,使用 IDD_CX_CLIENT_CONFIG_INIT () 宏初始化IDD_CX_CLIENT_CONFIG结构。 宏使用运行时代码将"大小"字段设置为运行驱动程序的 IddCx 版本的正确大小。
  • 使用 IDD_IS_FIELD_AVAILABLE () 宏来确定从 IddCx 传递到驱动程序的结构是否定义了该字段。 注意:IddCx 1.4 未扩展从 IddCx 传递到驱动程序的任何现有结构,因此无需在 IddCx 1.4 中使用此宏。
  • 使用 IDD_IS_FUNCTION_AVAILABLE () 宏来确定驱动程序运行的 OS 上是否提供给定的 IddCx 函数。 例如,使用 IDD_IS_FUNCTION_AVAILABLE (IddCxAdapterSetRenderAdapter) 确定 IddCxAdapterSetRenderAdapter () 是否支持此 OS。

下表总结了不同 OS 版本支持的 IddCx 版本。

OS 版本。 OS 附带的 IddCx 版本 可运行的驱动程序的 IddCx 版本
1607 (RS1) 1.0 1.0
1703 (RS2) 1.0 1.0
1709 (RS3) 1.2 1.0 和 1.2
1803 (RS4) 1.3 1.0-1.3 和 1.4 (*)
1809 (RS5) 1.3 1.0-1.3 和 1.4 (*)
1903 (19H1) 1.4 1.0-1.3 和 1.4 (*)
1909 (19H2) 1.4 1.0-1.3 和 1.4 (*)
2004 (20H1) 1.4 1.0-1.3 和 1.4 (*)
空值 1.6 1.0-1.3 和 1.4 (*)

* IddCx 1.4 及以上 IDD 需要使用动态宏(如 IDD_IS_FUNCTION_AVAILABLE () )才能在运行时决定它可以调用的 OS 功能。 这些动态宏在 iddcx.h 中定义

若要支持所有可能的版本,Windows:

  • 为 1607 到 1709 Windows 10 IddCx 1.0 驱动程序。
  • 编写单个 IddCx 1.4 或更高版本驱动程序Windows 10版本 1803 及更高版本。