GetObject的问题
同一个图片,两次GetObject后,bmBitsPixel的值不等.(除了下面两个不等,其他是相同的).是怎么回事情啊? 我主要是要比较两个bitmap.
HBITMAP hbmpCurrent, hbmpLast;
int cb1, cb2;
BITMAP bmCurrent, bmLast;
// current_test.bmp is a 24bit bitmap
hbmpCurrent = LoadImage (NULL, "c:\\current_test.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_CREATEDIBSECTION);
if (!hbmpCurrent)
MessageBox(NULL,"LoadBitmapFromFile hbmpCurrent error", "hbmpCurrent",MB_OK);
hbmpLast = LoadImage (NULL, "c:\\current_test.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_DEFAULTSIZE | LR_CREATEDIBSECTION);
if (!hbmpLast)
MessageBox(NULL,"LoadBitmapFromFile hbmpLast error", "hbmpLast",MB_OK);
GetObject(hbmpCurrent, sizeof(bmCurrent), &bmCurrent);
GetObject(hbmpLast, sizeof(bmLast), &bmLast);
PRINTOUT(bmCurrent.bmBitsPixel ); // <-- Here, value is 32
PRINTOUT(bmLast.bmBitsPixel ); // <-- Here, value is 24
PRINTOUT(bmCurrent.bmBits ); // <-- Here, value is 0
PRINTOUT(bmLast.bmBits ); // <-- Here, value is 3