PDD_SURFCB_DESTROYSURFACE回调函数 (ddrawint.h)

DdDestroySurface 回调函数销毁 DirectDraw 图面。

语法

PDD_SURFCB_DESTROYSURFACE PddSurfcbDestroysurface;

DWORD PddSurfcbDestroysurface(
  PDD_DESTROYSURFACEDATA unnamedParam1
)
{...}

参数

unnamedParam1

指向包含销毁图面所需的信息的 DD_DESTROYSURFACEDATA 结构。

返回值

DdDestroySurface 返回以下回调代码之一:

备注

如果 DirectDraw 在创建图面时进行了内存分配,并且驱动程序未参与分配,则 DirectDraw 不会调用驱动程序的 DdDestroySurface 函数来销毁图面。

如果驱动程序本身正在执行 Surface 内存管理,DdDestroySurface 应释放 Surface 内存并执行任何其他清理,例如释放存储在DD_SURFACE_GLOBALDD_SURFACE_LOCAL结构的 dwReserved1 成员中的私有数据。

对于驱动程序管理的图面,如果图面是永久性 (也就是说,未) 设置 DDSCAPS2 结构的 dwCaps2 成员中的DDSCAPS2_DONOTPERSIST标志,则可以调用 DdDestroySurface,以便从视频内存中逐出图面。 在这种情况下,显示驱动程序可以继续保留 dwReserved1 成员中的任何私有数据,直到调用 DdDestroySurface 来实际销毁图面。

可以使用禁用的 PDEV 调用 DdDestroySurface。 通过调用显示驱动程序的 DrvAssertMode 函数禁用或启用 PDEV。 有关详细信息 ,请参阅管理 PDEV

要求

   
目标平台 桌面
标头 ddrawint.h (包括 Winddi.h)

请参阅

DDSCAPS2

DD_DESTROYSURFACEDATA

DdCreateSurface