DdCreateDirectDrawObject function (ddrawgdi.h)

[This function is subject to change with each operating system revision. Instead, use the DirectDraw and Microsoft Direct3DAPIs; these APIs insulate applications from such operating system changes, and hide many other difficulties involved in interacting directly with display drivers.]

Wrapper for the NtGdiDdCreateDirectDrawObject function and creates a kernel-side representation of the Microsoft DirectDraw object. A handle to this representation will be stored in pDirectDrawGlobal->hDD.

GdiEntry1 is defined as an alias for this function.


BOOL DdCreateDirectDrawObject(
  HDC                     hdc



Pointer to the user-mode DirectDraw object. See DDK documentation for details.


Handle to the DC for the device for which this representation is created. If 0, device will be the "display" device. Note that this function retains only one "display" DirectDraw object, and it will return a copied handle to that same object if subsequently called with hdc = 0.

Return value

If successful, this function returns TRUE; otherwise it returns FALSE.


Applications are advised to use the DirectDraw and Direct3D APIs to create and manage graphics device objects. These constructs abstract the device creation process in a simplified and operating-system-independent way.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header ddrawgdi.h

See also

Graphics Low Level Client Support