DirectDraw 的返回值

下表列出了 DirectDraw 驱动程序提供的函数可以返回的值。 DDHAL_DRIVER_Xxx 值实际上在 DWORD 返回值中返回。 DD_OK值和DDERR_Xxx 错误代码在特定函数的参数指向的结构的 ddRVal 成员中返回。

有关每个函数可以返回的特定错误代码,请参阅参考部分中的函数说明。 有关错误代码和返回值的完整列表,请参阅 DirectDraw 头文件 ddraw.hdxmini.h 。 请注意,错误代码由负值表示,不能组合使用。

DirectDraw 驱动程序中的函数必须返回两个返回代码之一:DDHAL_DRIVER_HANDLED或DDHAL_DRIVER_NOTHANDLED。 如果驱动程序返回DDHAL_DRIVER_HANDLED,则还必须返回DD_OK或 ddraw.h 中列出的错误代码之一。 DirectDraw 驱动程序中的函数可以返回下表中的代码。 这些代码在 ddraw.h 中定义。

返回代码 含义
DD_OK 请求已成功完成。
DDHAL_DRIVER_HANDLED 驱动程序已执行该操作,并在传递给驱动程序回调的结构的 ddrval 成员中返回了该操作的有效返回代码。 如果此代码DD_OK,则 DirectDraw 或 Direct3D 将继续执行 函数。 否则,DirectDraw 或 Direct3D 将返回驱动程序提供的错误代码并中止函数。
DDHAL_DRIVER_NOCKEYHW 显示驱动程序无法处理调用,因为它耗尽了颜色键硬件资源。
DDHAL_DRIVER_NOTHANDLED 驱动程序对请求的操作没有注释。 如果需要驱动程序实现特定的回调,DirectDraw 或 Direct3D 会报告错误条件。 否则,DirectDraw 或 Direct3D 处理操作,就像未通过执行 DirectDraw 或 Direct3D 设备无关实现来定义驱动程序回调一样。 DirectDraw 和 Direct3D 通常忽略该回调参数结构的 ddrval 成员中返回的任何值。
DDERR_GENERIC 存在未定义的错误条件。
DDERR_OUTOFCAPS 已分配所请求操作所需的硬件。
DDERR_UNSUPPORTED 此操作不受支持。

在视频微型端口驱动程序中实现的 DxApi 函数返回下表中的代码之一。 这些代码在 dxmini.h 中定义。

返回代码 含义
DX_OK 请求已成功完成。
DXERR_GENERIC 存在未定义的错误条件。
DXERR_OUTOFCAPS 已分配所请求操作所需的硬件。
DXERR_UNSUPPORTED 此操作不受支持。