Compartilhar via


IDirectDrawSurface (Compact 2013)

3/26/2014

Applications use the methods of the IDirectDrawSurface interface to create DirectDrawSurface objects and work with system-level variables.

IDirectDraw::CreateSurface will return a fully supported IDirectDrawSurface interface pointer.

You cannot obtain the IDirectDrawSurface interface directly from CreateSurface; use the IUnknown::QueryInterface method to retrieve it.

The methods of the IDirectDrawSurface interface can be organized into the following groups:

Allocating memory

IDirectDrawSurface::IsLost

IDirectDrawSurface::Restore

Attaching surfaces

IDirectDrawSurface::EnumAttachedSurfaces

Blitting

IDirectDrawSurface::AlphaBlt

IDirectDrawSurface::Blt

IDirectDrawSurface::GetBltStatus

Color keying

IDirectDrawSurface::GetColorKey

IDirectDrawSurface::SetColorKey

Device capabilities

IDirectDrawSurface::GetCaps

Device contexts

IDirectDrawSurface::GetDC

IDirectDrawSurface::ReleaseDC

Flipping

IDirectDrawSurface::Flip

IDirectDrawSurface::GetFlipStatus

Locking surfaces

IDirectDrawSurface::Lock

IDirectDrawSurface::Unlock

Miscellaneous

IDirectDrawSurface::GetDDInterface

Overlays

IDirectDrawSurface::EnumOverlayZOrders

IDirectDrawSurface::GetOverlayPosition

IDirectDrawSurface::SetOverlayPosition

IDirectDrawSurface::UpdateOverlay

IDirectDrawSurface::UpdateOverlayZOrder

Surface clipper

IDirectDrawSurface::GetClipper

IDirectDrawSurface::SetClipper

Surface characteristics

IDirectDrawSurface::GetPixelFormat

IDirectDrawSurface::GetSurfaceDesc

Surface palettes

IDirectDrawSurface::GetPalette

IDirectDrawSurface::SetPalette

The IDirectDrawSurface interface, like all COM interfaces, inherits the IUnknown interface methods.

The IUnknown interface supports the following three methods:

IUnknown

IUnknown::AddRef

IUnknown::QueryInterface

IUnknown::Release

You can use the LPDIRECTDRAWSURFACE data type to declare variables that point to various DirectDrawSurface object interfaces.

The Ddraw.h header file declares this data type with the following code.

typedef struct IDirectDrawSurface     FAR *LPDIRECTDRAWSURFACE;

Requirements

Header

ddraw.h

Library

ddraw.lib

See Also

Reference

DirectDraw Interfaces
DirectDraw Reference
IDirectDraw::CreateSurface

Other Resources

DirectDraw