IDirectDrawSurface7::Restore メソッド (ddraw.h)
失われたサーフェスを復元します。 これは、DirectDrawSurface オブジェクトに関連付けられているサーフェス メモリが解放されたときに発生します。
構文
HRESULT Restore();
戻り値
メソッドが成功した場合、戻り値はDD_OK。
失敗した場合、メソッドは次のいずれかのエラー値を返すことができます。
- DDERR_GENERIC
- DDERR_IMPLICITLYCREATED
- DDERR_INCOMPATIBLEPRIMARY
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_NOEXCLUSIVEMODE
- DDERR_OUTOFMEMORY
- DDERR_UNSUPPORTED
- DDERR_WRONGMODE
注釈
復元 では、サーフェスに割り当てられたメモリが復元されますが、失われる前にサーフェスに存在していたビットマップは再読み込みされません。
グラフィックス アダプターのモードが変更されたか、アプリケーションがグラフィックス アダプターへの排他的アクセスを受け取り、アダプターに現在割り当てられているすべてのサーフェス メモリを解放したため、サーフェスが失われる可能性があります。 DirectDrawSurface オブジェクトがサーフェス メモリを失うと、多くのメソッドは DDERR_SURFACELOSTを返し、他の関数を実行しません。 IDirectDrawSurface7::Restore メソッドは、サーフェス メモリを再割り当てし、DirectDrawSurface オブジェクトに再アタッチします。
Restore を 1 回呼び出すと、DirectDrawSurface オブジェクトに関連付けられている暗黙的なサーフェス (バック バッファーなど) が復元されます。 暗黙的に作成されたサーフェスを復元しようとすると、エラーが発生します。 復元 は、 IDirectDrawSurface7::AddAttachedSurface メソッドを使用して作成された明示的な添付ファイルでは機能しません。これらの各サーフェスは個別に復元する必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | ddraw.h |
Library | Ddraw.lib |
[DLL] | Ddraw.dll |