桌面重复

Windows 8 引入了基于 DirectX 图形基础结构(DXGI)的 API,称为 桌面重复 API。 此 API 使独立软件供应商(ISV)能够更轻松地支持桌面协作和远程桌面访问。

此类应用程序在企业和教育方案中广泛使用。 这些应用程序共享一个常见要求:它们需要访问桌面的内容,并能够将内容传输到远程位置。

API 通过位图和相关元数据的优化来提供对桌面内容的访问。 它适用于已启用 Aero 主题,并且不依赖于应用程序使用的图形 API。 如果用户可以在本地主机上查看应用程序,也可以远程查看内容。 这意味着甚至可以复制全屏 DirectX 应用程序。 API 提供保护,防止访问受保护的视频内容。

API 使应用程序能够请求 Windows,以在监视器边界内提供对桌面内容的访问。 应用程序可以复制一个或多个活动显示器。 当应用程序请求重复时,会发生以下情况:

  • Windows 呈现桌面并向应用程序提供桌面的副本。
  • 每个呈现的帧都放置在 GPU 内存中。
  • 每个呈现的帧附带以下元数据:
    • 脏区域
    • 屏幕到屏幕传输
    • 鼠标光标信息
  • 应用程序提供对帧和元数据的访问权限。
  • 应用程序负责处理每个帧:
    • 应用程序可以选择基于脏区域进行优化。
    • 应用程序可以选择使用硬件加速来处理移动和鼠标数据。
    • 应用程序可以选择在流出之前使用硬件加速进行压缩。

有关详细文档和示例,请参阅 桌面重复 API