DirectDraw Display Driver Architecture (Windows CE 5.0)
The core DirectDraw executable code resides in a system process, Gwes.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 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 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 CE environment. For more information, see the specification.
The following illustration shows how DirectDraw and the display driver are integrated.
Send Feedback on this topic to the authors