Método IDirectDrawSurface7::D eleteAttachedSurface (ddraw.h)

Separa una o varias superficies adjuntas.

Sintaxis

HRESULT DeleteAttachedSurface(
  [in] DWORD                unnamedParam1,
  [in] LPDIRECTDRAWSURFACE7 unnamedParam2
);

Parámetros

[in] unnamedParam1

Actualmente no se usa y debe establecerse en 0.

[in] unnamedParam2

Puntero a la interfaz IDirectDrawSurface7 del objeto DirectDrawSurface que se va a desasociar. Si este parámetro es NULL, todas las superficies adjuntas se desasocian.

Valor devuelto

Si el método se realiza correctamente, el valor devuelto es DD_OK.

Si se produce un error, el método puede devolver uno de los siguientes valores de error:

  • DDERR_CANNOTDETACHSURFACE
  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_SURFACELOST
  • DDERR_SURFACENOTATTACHED

Comentarios

DeleteAttachedSurface disminuye el recuento de referencias de la superficie que se va a desasociar. Si el recuento de referencias de la superficie que se va a desasociar alcanza 0, la superficie se pierde y se quita de la memoria.

Los datos adjuntos implícitos, los formados por DirectDraw en lugar del método IDirectDrawSurface7::AddAttachedSurface , no se pueden desasociar. La separación de superficies de una cadena de volteo puede modificar otras superficies de la cadena. Si un búfer frontal se separa de una cadena de volteo, la siguiente superficie de la cadena se convierte en el búfer frontal y la siguiente superficie se convierte en el búfer de reserva. Si un búfer de reserva se desasocia de una cadena, la siguiente superficie se convierte en un búfer de reserva. Si una superficie sin formato se separa de una cadena, la cadena simplemente se vuelve más corta. Si una cadena de volteo solo tiene dos superficies y se separan, la cadena se destruye y ambas superficies vuelven a sus designaciones anteriores.

Requisitos

   
Plataforma de destino Windows
Encabezado ddraw.h
Library Ddraw.lib
Archivo DLL Ddraw.dll

Consulte también

IDirectDrawSurface7