Compartir a través de


Función DirectDrawCreateEx (ddraw.h)

Crea una instancia de un objeto DirectDraw que admite el conjunto de interfaces de Direct3D en DirectX 7.0. Para usar las características de Direct3D en DirectX 7.0, cree un objeto DirectDraw con esta función.

Sintaxis

HRESULT DirectDrawCreateEx(
  [in]  GUID     *lpGuid,
  [out] LPVOID   *lplpDD,
  [in]  REFIID   iid,
  [in]  IUnknown *pUnkOuter
);

Parámetros

[in] lpGuid

Puntero al identificador único global (GUID) que representa el controlador que se va a crear. Puede ser NULL para indicar el controlador de pantalla activo o puede pasar una de las siguientes marcas para restringir el comportamiento del controlador de pantalla activo con fines de depuración:

DDCREATE_EMULATIONONLY

El objeto DirectDraw usa la emulación para todas las características; no aprovecha ninguna característica compatible con hardware.

DDCREATE_HARDWAREONLY

El objeto DirectDraw nunca emula las características no compatibles con el hardware. Se produce un error en los intentos de llamar a métodos que requieren características no admitidas y devuelve DDERR_UNSUPPORTED.

[out] lplpDD

Puntero a una variable que se va a establecer en un puntero de interfaz IDirectDraw7 válido si la llamada se realiza correctamente.

[in] iid

Este parámetro debe establecerse en IID_IDirectDraw7. Esta función produce un error y devuelve DDERR_INVALIDPARAMS si se especifica alguna otra interfaz.

[in] pUnkOuter

Permite la compatibilidad futura con las características de agregación COM. Actualmente, esta función devuelve un error si este parámetro no es NULL.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto se DD_OK.

Si se produce un error, la función puede devolver uno de los siguientes valores de error:

  • DDERR_DIRECTDRAWALREADYCREATED
  • DDERR_GENERIC
  • DDERR_INVALIDDIRECTDRAWGUID
  • DDERR_INVALIDPARAMS
  • DDERR_NODIRECTDRAWHW
  • DDERR_OUTOFMEMORY

Comentarios

Esta función intenta inicializar un objeto DirectDraw y, a continuación, establece un puntero al objeto si la llamada se realiza correctamente.

En equipos con varios monitores, si especifica NULL para lpGUID, el objeto DirectDraw se ejecuta en modo de emulación cuando se establece el nivel cooperativo normal. Para usar la aceleración de hardware en estos equipos, especifique el GUID del dispositivo.

Debe usar LoadLibrary para vincular explícitamente a Ddraw.dll y, a continuación, usar GetProcAddress para acceder a la función DirectDrawCreateEx .

Requisitos

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