Platform SDK: DirectX |
DirectDrawSurface7.IsLost メソッドは、DirectDrawSurface オブジェクトに関連付けられたサーフェス メモリが解放されたかどうかを決定する。
object.IsLost() As Long
成功すれば、サーフェスが解放されていない場合はゼロ (FALSE)、解放されている場合はゼロ以外の値を返す。
失敗すればエラーが発生し、Err.Number に次のいずれかの値が設定される。
DDERR_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_SURFACELOST |
このメソッドを使って、サーフェス メモリを再割り当てする必要があるかどうかを確認できる。再割り当ては、DirectDrawSurface7.Restore メソッドによって行う。DirectDrawSurface オブジェクトがサーフェス メモリを消失すると、大部分のメソッドは DDERR_SURFACELOST を返してほかのアクションを実行しない。
ディスプレイ カードのモードが変更されるとき、またはアプリケーションがディスプレイ カードへの排他アクセスを受け取り、ディスプレイ カードに現在割り当てられているサーフェス メモリをすべて解放するときに、サーフェスはそれらのメモリを消失できる。