DrvGetDirectDrawInfo 函数 (winddi.h)

DrvGetDirectDrawInfo 函数返回图形硬件的功能。

语法

BOOL DrvGetDirectDrawInfo(
  DHPDEV      dhpdev,
  DD_HALINFO  *pHalInfo,
  DWORD       *pdwNumHeaps,
  VIDEOMEMORY *pvmList,
  DWORD       *pdwNumFourCCCodes,
  DWORD       *pdwFourCC
);

参数

dhpdev

驱动程序的 DrvEnablePDEV 例程返回的 PDEV 的句柄。

pHalInfo

指向 DD_HALINFO 结构,其中驱动程序应返回它支持的硬件功能。

pdwNumHeaps

指向驱动程序应返回 pvmList 指向的 VIDEOMEMORY 结构数的位置。

pvmList

指向 VIDEOMEMORY 结构的数组,驱动程序应在其中返回有关其控制的每个显示内存区块的信息。 当此参数为 NULL 时,驱动程序应忽略此参数。

pdwNumFourCCCodes

指向驱动程序应返回 pdwFourCC 指向的 DWORD 数的位置。

pdwFourCC

指向 DWORD 数组,驱动程序应在其中返回有关它支持的每个 FOURCC 的信息。 当此参数为 NULL 时,驱动程序应忽略此参数。

返回值

如果成功,DrvGetDirectDrawInfo 将返回 TRUE;否则,它将返回 FALSE

注解

驱动程序的 DrvGetDirectDrawInfo 例程应执行以下操作:

  • pvmListpdwFourCCNULL 时:
    1. 保留屏幕外显示内存以供 DirectDraw 使用。
    2. 分别在 pdwNumHeapspdwNumFourCC 中写入驱动程序显示内存堆数和支持的 FOURC。
  • pvmListpdwFourCC 不为 NULL 时:
    1. 分别在 pdwNumHeapspdwNumFourCC 中写入驱动程序显示内存堆数和支持的 FOURC。
    2. 对于 pvmList 指向的列表中的每个 VIDEOMEMORY 结构,请填写相应的成员以描述特定显示内存块。 结构列表为 DirectDraw 提供了驱动程序的屏幕外内存的完整说明。
  • 使用特定于驱动程序的信息初始化 DD_HALINFO 结构的成员,如下所示:
    1. 初始化 vmiDataVIDEOMEMORYINFO 结构的相应成员,以描述显示器内存的一般特征。
    2. 初始化 ddCaps 中 DDCORECAPS 结构的相应成员,以描述硬件的功能。
    3. 如果驱动程序实现 DdGetDriverInfo 函数,请将 GetDriverInfo 设置为指向它,并将 dwFlags 设置为 DDHALINFO_GETDRIVERINFOSET。

要求

要求
目标平台 桌面
标头 winddi.h (包括 Winddi.h)

另请参阅

DD_HALINFO

DdGetDriverInfo

DrvEnableDirectDraw

VIDEOMEMORY

VIDEOMEMORYINFO