D3DDDIARG_LOCK 结构 (d3dumddi.h)

D3DDDIARG_LOCK结构描述要锁定的资源或资源中的图面。

语法

typedef struct _D3DDDIARG_LOCK {
  [in]  HANDLE           hResource;
  [in]  UINT             SubResourceIndex;
  union {
    [in]  D3DDDIRANGE Range;
    [in]  RECT        Area;
    [in]  D3DDDIBOX   Box;
  };
  [out] VOID             *pSurfData;
  [out] UINT             Pitch;
  [out] UINT             SlicePitch;
  [in]  D3DDDI_LOCKFLAGS Flags;
} D3DDDIARG_LOCK;

成员

[in] hResource

要锁定的资源的句柄。

[in] SubResourceIndex

资源中的从零开始的索引,由 hResource 指定的句柄指定。 此索引指示要锁定的子资源或图面。

[in] Range

描述要锁定的线性资源的子范围D3DDDIRANGE结构。

[in] Area

描述要锁定的图面的子矩形的 RECT 结构。

[in] Box

描述要锁定的卷子卷的D3DDDIBOX结构。

[out] pSurfData

指向已锁定资源的内存区域的指针。 用户模式显示驱动程序的 Lock 函数返回指向 Microsoft Direct3D 运行时的此指针。

[out] Pitch

已锁定的图面的间距(以字节为单位)。 用户模式显示驱动程序的 Lock 函数将此间距值返回到 Direct3D 运行时。

[out] SlicePitch

已锁定的图面的切片间距(以字节为单位)。 用户模式显示驱动程序的 Lock 函数将此切片间距值返回到 Direct3D 运行时。

[in] Flags

一个D3DDDI_LOCKFLAGS结构,该结构指示在位域标志中如何锁定资源。 请注意,某些标志与其他标志互斥。 有关更多信息,请参见下面的“备注”部分。

注解

由 Flags 成员指定的结构的成员必须遵守以下规则:

  • 不能同时设置 ReadOnlyWriteOnly 位字段标志。
  • 不得同时设置 NoOverwrite 位字段标志和 Discard 位字段标志。
  • 在任何时候都只能设置 RangeValidAreaValidBoxValid 位字段标志之一。
  • ReadOnly 位字段标志不能与 Discard 位字段标志同时设置。

要求

要求
最低受支持的客户端 在 Windows Vista 和更高版本的 Windows 操作系统中可用。
标头 d3dumddi.h (包括 D3dumddi.h)

另请参阅

D3DDDI_LOCKFLAGS

Lock