Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2010, 11:06   #1
trumpl
Новичок
Джуниор
 
Регистрация: 21.02.2010
Сообщений: 1
По умолчанию Сохранение регионов

Доброго времени суток.
Такая проблемка. Пытаюсь сохранить несколько объектов типа HRGN (регионы) в один файловый поток.
Их размер сохраняю в другом месте.
Однако при считывании считывается нормально только первый регион, остальные возвращает 0. Где я мог ошибится?

Цикл записи ( ну тут пусть будет вайл. просто слишком много кода будет ):
Код:
size := GetRegionData (Rgn, SizeOf (RGNDATA), nil); // определяем размер
data := GlobalAllocPtr(GPTR, size); // выделяем память
GetRegionData(Rgn, size, data); // записываем регион в переменную типа pointer
buff.Write(data^,size); // buff - TFileStream
GlobalFreePtr(data);
Цикл считывания:
Код:
data := GlobalAllocPtr(GPTR, size);
s.Read(data^, size);
Rgn := ExtCreateRegion(nil, size, data^); // вот здесь получается 0
GlobalFreePtr(data);
С Уважением.
trumpl вне форума Ответить с цитированием
Старый 21.02.2010, 22:10   #2
maxionans
Форумчанин
 
Аватар для maxionans
 
Регистрация: 02.01.2010
Сообщений: 254
По умолчанию

Тут либо проблема с хранением размера данных региона, либо с позиционированием в потоке во время чтения данных (это если предположить, что данные в потоке вообще имеются и они верны).

Возможно, поможет установка s.Position в 0 перед началом цикла считывания.
maxionans вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по поводу регионов Malkovich Win Api 3 12.09.2009 10:25
Подсвечивание регионов на облатной карте dizmo HTML и CSS 8 14.08.2009 01:27
Сохранение Патрон Общие вопросы Delphi 21 14.12.2008 14:23
сохранение 1234 Общие вопросы Delphi 11 30.08.2008 11:47