窗口模式行为
窗口模式设备的 Microsoft Direct3D 运行时从不调用用户模式显示驱动程序的函数来锁定旋转的主图面、呈现到旋转的主图面或执行位块传输 (bitblt) 与旋转的主图面或从旋转的主图面进行位块传输。 也就是说,窗口模式设备的 Direct3D 运行时处理所有这些情况。
窗口模式设备的 Direct3D 运行时可能不会调用用户模式显示驱动程序的 OpenResource 函数来打开共享的主图面并通知用户模式显示驱动程序主图面的方向。 但是,如果桌面窗口管理器 (DWM) 未运行,则 Direct3D 运行时会调用 OpenResource,并且用户模式显示驱动程序会通知主窗口的方向。 仅当驱动程序必须出于自己的目的通过 bitblt 或锁定) 访问主图面 (时,用户模式显示驱动程序才应注意主图面方向;窗口模式设备的 Direct3D 运行时永远不会请求用户模式显示驱动程序访问旋转的主图面。 因此,如果用户模式显示驱动程序必须出于自己的内部目的访问主图面,则驱动程序除了调用其 OpenResource 函数外,还需要一种机制,因为 OpenResource 并不总是被调用。
DWM 或显示微型端口驱动程序的 DxgkDdiPresent 函数旋转窗口模式数据。