DirectDraw の戻り値

次の表は、DirectDraw ドライバー提供関数が返すことができる値を示します。 DDHAL_DRIVER_Xxx 値は、実際には DWORD 戻り値で返されます。 DD_OK 値と DDERR_Xxx エラー コードは、特定の関数のパラメーターが指す構造体の ddRVal メンバーで返されます。

各関数が返すことができる特定のエラー コードについては、「リファレンス」セクションの関数の説明を参照してください。 エラー コードと戻り値の完全なリストについては、DirectDraw ヘッダー ファイル ddraw.h および dxmini.h を参照してください。 エラー コードは負の値で表され、結合できないことに注意してください。

DirectDraw ドライバーの関数は、DDHAL_DRIVER_HANDLED または DDHAL_DRIVER_NOTHANDLED の 2 つのリターン コードのいずれかを返す必要があります。 ドライバーが 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 この操作はサポートされていません。