DirectDraw Display Driver Architecture (Windows Embedded CE 6.0)

1/6/2010

The core DirectDraw executable code resides in Gwes.dll within nk.exe. Applications link to a smaller client-side Ddraw.dll proxy. This proxy is responsible for maintaining remote DirectDraw COM interfaces between the system and user processes. By default, Windows Embedded CE does not provide for out-of-process COM servers.

An integrated abstraction layer is used by GDI and DirectDraw components within the system process to combine the functionality of GDI and DDI, and the functionality of DirectDraw and DDHAL, with a single, integrated framework of C++ classes and functions. This layer is called the DirectDraw Graphics Primitive Engine (DDGPE). The C++ classes provided by DDGPE are extensions of the existing GPE classes. These classes have always been available to developers for use in their GDI display drivers for Windows Embedded CE.

Note

You can enable both GDI multiple screens and DirectDraw entry points in your display driver. However, there are significant restrictions for using the DirectDraw API set while running multiple screens on your system. Also, the GDI screen rotation cannot be used with DirectDraw. For more information about GDI multiple screens and screen rotation, see the Multiple Screen and Screen Rotation topics listed in Display Driver Extensions.

Both DirectDraw and GDI link locally to the DDGPE-derived driver. A driver's DirectDraw functionality follows the Microsoft DirectDraw Hardware Abstraction Layer specification. This simplifies the porting effort of existing DDHAL drivers to the Windows Embedded CE environment. For more information, see the specification.

The following illustration shows how DirectDraw and the display driver are integrated.

Ee481448.cba6a342-caff-4323-a539-b4613f83c92d(en-US,WinEmbedded.60).gif

See Also

Concepts

DirectDraw Display Driver Development Concepts