Compartilhar via


Método IDirectDrawSurface7::SetSurfaceDesc (ddraw.h)

Define as características de uma superfície existente.

Sintaxe

HRESULT SetSurfaceDesc(
  [in] LPDDSURFACEDESC2 unnamedParam1,
  [in] DWORD            unnamedParam2
);

Parâmetros

[in] unnamedParam1

Um ponteiro para uma estrutura DDSURFACEDESC2 que contém as novas características da superfície.

[in] unnamedParam2

Atualmente, não é usado e deve ser definido como 0.

Retornar valor

Se o método for bem-sucedido, o valor retornado será DD_OK.

Se falhar, o método poderá retornar um dos seguintes valores de erro:

  • DDERR_INVALIDPARAMS
  • DDERR_INVALIDOBJECT
  • DDERR_SURFACELOST
  • DDERR_SURFACEBUSY
  • DDERR_INVALIDSURFACETYPE
  • DDERR_INVALIDPIXELFORMAT
  • DDERR_INVALIDCAPS
  • DDERR_UNSUPPORTED
  • DDERR_GENERIC

Comentários

Atualmente, você pode usar SetSurfaceDesc apenas para definir os dados da superfície e o formato de pixel usados por uma superfície explícita de memória do sistema. Isso é útil porque permite que uma superfície use dados de um buffer alocado anteriormente sem copiar. A nova memória de superfície é alocada pelo aplicativo cliente e, portanto, o aplicativo cliente também deve desalocá-la.

O objeto DirectDrawSurface não desaloca a memória de superfície que ele não alocou. Portanto, quando a memória da superfície não for mais necessária, você deverá desalocá-la. No entanto, quando você chama SetSurfaceDesc, o DirectDraw libera a memória de superfície original que ele alocou implicitamente quando criou a superfície.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho ddraw.h
Biblioteca Ddraw.lib
DLL Ddraw.dll

Confira também

IDirectDrawSurface7