Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема записи в архив битмапа 
:(
    Опции темы
pablo
Дата 11.8.2005, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 320
Регистрация: 12.2.2005
Где: Вильнюс, Литва

Репутация: нет
Всего: 6



есть код:

Код

CBitmap bitmap;
CAcModuleResourceOverride roModule;

BOOL result = bitmap.LoadBitmap(IDB_ANALYSIS_CONSTANT_ELASTICITY);
   
CFile myFile("D:\\test_bitmap.bmp", CFile::modeCreate | CFile::modeReadWrite);

         // Create a storing archive.
CArchive arStore(&myFile, CArchive::store);

          // Write the object to the archive
arStore.WriteObject(&bitmap);
         // Close the storing archive
         arStore.Close();

проблема заключается в следующем, надо както записать картинку в архив, но при записи всегда проижодит вот что:

вылетает сообщение о том что неперехвачено исключение, и программа заканчивает работу.

Может кто знает в чём может быть проблема, и как её исправить

Заранее благодарен smile



--------------------
Первый блин всегда похож на сферу, иногда бывает и куб.
PM MAIL ICQ   Вверх
Denn
Дата 12.8.2005, 09:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 6.8.2005

Репутация: 1
Всего: 2



Отлови Exception и посмотри о чем он говорит.
PM MAIL ICQ   Вверх
JoyEx
Дата 12.8.2005, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дядя
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 21.6.2005
Где: Москва, РФ

Репутация: 5
Всего: 12



Поможет CFile::typeBinary


--------------------
Если ты уже никого не боишься, значит ты самый страшный 
PM IM ICQ AOL YIM MSN   Вверх
Earnest
Дата 15.8.2005, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Не поможет. Посмотри в коде MFC, что делает эта строка:
Код

arStore.WriteObject(&bitmap);

А ничего умного она не делает: пишет всякую предварительную ерунду, идентифтицирующую класс объекта, а потом вызывает для объекта виртуальную функцию Serialize, которая по-умолчанию пустая, разумеется, и для bitmap не переопределена.
Вряд ли ты вместе с bitmap в файл будешь пихать другие объекты. Поэтому выкинь нафиг архив и пиши сам, ручками, прямо в файл - но сначала придется разобраться, как устроен bmp-файл.



--------------------
...
PM   Вверх
Nastya
Дата 16.8.2005, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 1
Всего: 44



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


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0759 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.