原创,为个人工作日记,请最好不要转载
20100920:
从16BPP提高到32BPP,可以正常显示,但是图片切换不够流畅
搞了快一周了,终于将GDI的驱动流程了解个大概,如下:
WINCE普通驱动是由device.exe加载和管理的,而显示以及输入设备等是由GWES.exe加载和管理的。访问显示驱动的接口也不是CreateFile等文件系统的API,而是由GDI接口CreateDC,ReleaseDC等接口(在wingdi.h中有定义)。
提供给GWES调用的上层GDI接口为DrvAnyBlt、DrvBitBlt等;但实际上公开给GWES的接口只有DrvEnableDriver(),在这个接口中导出其他的接口,如下:
GPEEnableDriver(ULONG iEngineVersion,ULONG cj,DRVENABLEDATA * pded,
PENGCALLBACKS pEngCallbacks)
{
memcpy(pded, &pDrvFn, cj);
}