массив [байт] в HBITMAP или CBitmap

У меня есть массив байтов (который я прочитал через поток непосредственно из файла. bmp, а затем сохранить как большой двоичный объект в базе данных), который я хочу отображать в виде значков в CImageList. Поэтому я хочу как-то загрузить свои данные в HBITMAP или CBitmap. Я делал это до сих пор, читая из файла:

hPic = (HBITMAP)LoadImage(NULL, strPath, IMAGE_BITMAP, dwWidth, dwHeight, LR_LOADFROMFILE | LR_VGACOLOR);
...
CBitmap bitmap;
bitmap.Attach(hPicRet);

Но очевидно, что это работает только для файлов, но не для байтовых массивов. Как я могу получить тот же результат, но при чтении из массива байтов?

Изменить: Обратите внимание, что мой массив не содержит только информацию о цвете, а содержит полный файл, записанный на диске, включая все заголовки и метаданные. Мне кажется, что отбрасывать всю эту информацию - плохая идея.

9
задан Kajetan Abt 14 February 2011 в 16:57
поделиться