Гррр!!! ААААА!!! @&%#!

 
+
-
edit
 
На диске картинку нужно сохранять как DIB, а затем считывать соответственно. Конвертируется из DDB с помощью GetDIBits(), а обратно - можешь юзать CreateDIBitmap() либо SetDIBits() для имеющегося дискриптора. Кстати, в файле нужно также сохранять структуру BITMAPINFO.
Удачи.
 

MiG
Реконструктор

опытный

Возникла потребность записать HBITMAP на винт а потом его скачать и показать.
И так, сперва взял BITMAP структуру с GetObject, записал ее, потом записал и BITMAP::bmBits.
Геморои появилсь, кога попытался проделать обратную операцию :frown: :frown: :frown: Скачал BITMAP, потом и BITMAP::bmBits совестно заделив им соответсвующий буффер. CreateBitmap и CreateBitmapIndirect выполняются нормально, т.е. я получаю валидный манипулятор типа HBITMAP. Но потом, после выполнения GetObject, BITMAP::bmBits у меня == NULL :frown: Черт!!!!
Результат SetDIBits = ноль, GetLastError - тоже ноль. Что же делать?
 

MiG
Реконструктор

опытный

Спосибо большое!
Но сейчас возникла очередная головоломка:
CreateDIBitmap-у почему-то нужен HDC как первый параметр. Маразм какой-то: Create DIB работает как Create DDB :frown: Если подсунеш ему NULL, то создает нечто удивительное - битмап с 1 bbp :frown: Попытка комбинировать CreateBitmap и SetDIBits увенчалась неуспехом.
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru