CreateDIBSection用法
我原来在VC下写了一个显示JPEG文件的程序,现在需要移植到WinCE中,但在WinCE中不支持 CreateDIBitmap函数,所以我就用CreateDIBSection来代替(或有其他更好的办法,望赐教),我的代码如下:
hDc=GetDC(hWnd);
char *ptData=(char *)lpPtr;
hBitmap=CreateDIBSection(hDc,(BITMAPINFO *)lpImgData,DIB_RGB_COLORS,
(void **)&ptData,NULL, 0);
memcpy(ptData, lpPtr, ImgSize);
说明:
lpImgData指针指向"BITMAPINFO+位图数据"
lpPtr指针指向“位图数据”
最后一句要说明一下,ptData就是指向lpPtr的指针,为什么要自己向自己拷贝一遍呢?原因我也不知道,只是跟着感觉这样用了,在VC中就可以正常显示,不这样反而不能显示。但移植到WinCE中就无法工作。调试发现hBitmap始终指向0x0000000,这说明创建失败,但原因是什么呢?
当然如果你有其他办法请不吝赐教!!!