ID3D11Device::SetPrivateData 方法 (d3d11.h)

将数据设置为设备,并将该数据与 guid 相关联。

语法

HRESULT SetPrivateData(
  [in]           REFGUID    guid,
  [in]           UINT       DataSize,
  [in, optional] const void *pData
);

参数

[in] guid

类型: REFGUID

与数据关联的 Guid。

[in] DataSize

类型: UINT

数据的大小。

[in, optional] pData

类型: const void*

指向要随此设备一起存储的数据的指针。 如果 pData 为 NULL,则 DataSize 也必须为 0,并且之前与 guid 关联的任何数据都将销毁。

返回值

类型: HRESULT

此方法返回以下 Direct3D 11 返回代码之一。

注解

可以使用 ID3D11Device::GetPrivateData 检索使用此方法存储在设备中的数据。

使用此方法的数据和 guid 集通常由应用程序定义。

调试层通过输出对象接口指针及其友好名称的列表来报告内存泄漏。 默认友好名称是“<unnamed>”。 可以设置友好名称,以便确定相应的对象接口指针是否导致泄漏。 若要设置友好名称,请使用 SetPrivateData 方法和 D3Dcommon.h 中的 WKPDID_D3DDebugObjectName GUID。 例如,若要为 pContext 提供 “我的名字”友好名称,请使用以下代码:


static const char c_szName[] = "My name";
hr = pContext->SetPrivateData( WKPDID_D3DDebugObjectName, sizeof( c_szName ) - 1, c_szName );

要求

要求
目标平台 Windows
标头 d3d11.h
Library D3D11.lib

另请参阅

ID3D11Device