DirectDrawCreate

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This function creates an instance of a DirectDraw object.

Syntax

HRESULT WINAPI DirectDrawCreate(
  GUID FAR* lpGUID, 
  LPDIRECTDRAW FAR* lplpDD, 
  IUnknown FAR* pUnkOuter
); 

Parameters

  • lpGUID
    [in] Address of the globally unique identifier (GUID) that represents the driver to be created.

    This can be NULL to indicate the active display driver.

  • lplpDD
    [out] Address of a variable that will be set to a valid IDirectDraw interface pointer if the call succeeds.
  • pUnkOuter
    [in] Allows for future compatibility with COM aggregation functionality. Currently, this method returns an error if this parameter is anything but NULL.

Return Value

If the function succeeds, the return value is DD_OK.

If the function fails, the return value may be one of the following error values:

Sample Code

An example showing the use of this function can be found in the topic How to use DirectDraw.

Remarks

This function attempts to initialize a DirectDraw object, and if the call is successful it then sets a pointer to the object.

On systems with multiple monitors, specifying NULL for lpGUID causes the DirectDraw object to run in emulation mode when the normal cooperative level is set. To make use of hardware acceleration on these systems, you must specify the device's GUID.

DirectDraw on Windows Embedded CE only enumerates the GUID for the primary display adapter. It is not possible to use DirectDrawCreate on a nonprimary adapter in a multiple monitor system.

Requirements

Header ddraw.h
Library ddraw.lib
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later