用于建议 VidPN 拓扑的系统调用
在运行 Windows 7 的计算机上,显示模式管理器(DMM)通过 CCD 数据库中的 VidPN 历史记录数据确定合适的 VidPN 拓扑。 DMM 不再根据最后已知的良好拓扑来确定 VidPN 拓扑,如同在 Windows Vista 中所做的那样。 因此,在 Windows 7 DMM 上,从不调用 DxgkDdiRecommendVidPnTopology 函数。
在 Windows Vista 及其服务包上,DMM 继续调用 DxgkDdiRecommendVidPnTopology 以请求驱动程序提供建议的功能 VidPN 拓扑。
ACPI 键盘快捷方式逻辑
从 Windows 7 开始,IHV 实现基于 ACPI 的特定于 OEM 的键盘快捷方式。 作系统不知道这些键盘快捷方式。 在 Windows 7 上,OEM 必须使用 CCD 数据库来存储和应用键盘快捷方式,以便作系统和任何 OEM 应用程序相互了解。
对以下函数的调用行为已更改,适用于在 Windows 7 上运行的驱动程序:
DxgkDdiNotifyAcpiEvent 和 DxgkDdiRecommendFunctionalVidPn
如果显示微型端口驱动程序收到对 DxgkDdiNotifyAcpiEvent 函数的调用,并在 AcpiFlags 参数中设置DXGK_ACPI_CHANGE_DISPLAY_MODE标志,DMM 将调用 DxgkDdiRecommendFunctionalVidPn 函数以获取新的 VidPN,并与当前客户端 VidPN 进行比较。 如果两个 VidPN 的拓扑相同,DMM 不会修改新的 VidPN。 否则,DMM 会从 VidPN 中删除模式信息,只保留拓扑,并允许 CCD 数据库确定给定拓扑的模式。 然后,DMM 基于新的 VidPN 设置显示配置。
D3DKMTInvalidateActiveVidPn
Windows Vista 及更高版本支持此函数,用于显示具有版本 < DXGKDDI_INTERFACE_VERSION_WIN7的微型端口驱动程序。 函数行为与 Windows Vista 上的行为相同。
在 Windows 7 及更高版本中,版本 >= DXGKDDI_INTERFACE_VERSION_WIN7 的显示微型端口驱动程序不支持此功能。 如果调用,则返回状态代码STATUS_NOT_SUPPORTED。
查询 VidPN 硬件功能
从 Windows 7 开始,需要显示微型端口驱动程序来报告指定功能 VidPN 的所有硬件功能。 驱动程序应支持以下回调函数及其关联结构:
DxgkDdiQueryVidPnHWCapability 函数
DXGKARG_QUERYVIDPNHWCAPABILITY 结构
D3DKMDT_VIDPN_HW_CAPABILITY 结构
当驱动程序报告硬件功能时,应考虑克隆是作为旋转或缩放转换的一部分完成的隐式过程:必须先克隆源,然后才能进行轮换或缩放。
如果D3DKMDT_VIDPN_HW_CAPABILITY的任何成员对指定的 VidPN 路径没有任何意义,则如果成员设置为非零值,则显示模式管理器 (DMM) 将不会报告任何错误。 DMM 将清除所有此类值,然后再将其报告给用户模式客户端。 但是,驱动程序需要将 D3DKMDT_VIDPN_HW_CAPABILITY 的 Reserved 成员的值设置为 0。