Out of Memory (heap overflow
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Out of Memory (heap overflow
Здравствуйте.
C6.3(ABC)
Возникла такая проблема.
Редактирую форму, на ней ,примерно, около 400 объектов (16 однотипных region-ов, в каждом по 22 элемента, плюс еще разное).
Наступает момент, когда при копировании нескольких элементов возникает ошибка:
Storage Error
Out of Memory (heap overflow).
Оболочка Clarion-a вылетает.
Подскажите, где нужно увеличить heap_size.
C6.3(ABC)
Возникла такая проблема.
Редактирую форму, на ней ,примерно, около 400 объектов (16 однотипных region-ов, в каждом по 22 элемента, плюс еще разное).
Наступает момент, когда при копировании нескольких элементов возникает ошибка:
Storage Error
Out of Memory (heap overflow).
Оболочка Clarion-a вылетает.
Подскажите, где нужно увеличить heap_size.
Всем пралитарское Спасибо и 'Желаю, чтобы ВСЕ !!!'
- Дед Пахом
- Старичок
- Сообщения: 3300
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Re: Out of Memory (heap overflow
Проверьте размер структуры окна - она не может превышать 64K.
С уважением, ДП
Re: Out of Memory (heap overflow
Глупый вопрос - а как?
Всем пралитарское Спасибо и 'Желаю, чтобы ВСЕ !!!'
- Дед Пахом
- Старичок
- Сообщения: 3300
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Re: Out of Memory (heap overflow
Зайдите в текстовое представление WINDOW и скопируйте в файл, ну и размер файла всё покажет.
С уважением, ДП
Re: Out of Memory (heap overflow
Получилось ~62KB.
Спасибо за науку.
Спасибо за науку.
Всем пралитарское Спасибо и 'Желаю, чтобы ВСЕ !!!'
Re: Out of Memory (heap overflow
Скорее всего подойдет Clone(...), а для вставки embeds придется нумеровать поля.
Всем пралитарское Спасибо и 'Желаю, чтобы ВСЕ !!!'
- Дед Пахом
- Старичок
- Сообщения: 3300
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Re: Out of Memory (heap overflow
Можно в текстовом представлении окна поудалять не сильно нужные атрибуты контролов, как то: TIP, FONT... Можно сэкономить пару-тройку килобайтов. А при необходимости восстановить их после OPEN(Window) с помощью ?ControlUse{prop:...}
С уважением, ДП
Re: Out of Memory (heap overflow
Не пытаясь обидеть автора. А все ли 16 регионов с 22 контролами каждый на одном экране?
Если нет, то может обойтись одним единственным? И чуть-чуть параметризации.
Если этот вариант не подходит, то лучше переходите на С7/C8, а то глядишь, вам 17-й регион понадобится. -- Там этой проблемы точно нет. Сам сталкивался и сражался с ней на С6.
Проверялось и раньше при миграции приложения, и недавно, сам себе не доверяя за давностью, снова проверял, отвечая в телеконференцию.
Кстати, в 16-битной IDE есть и другие, сходные с этим, ограничения: на число элементов меню во фрейме; на число процедур в едином app.
Учитывайте это при разработке.
Если нет, то может обойтись одним единственным? И чуть-чуть параметризации.
Если этот вариант не подходит, то лучше переходите на С7/C8, а то глядишь, вам 17-й регион понадобится. -- Там этой проблемы точно нет. Сам сталкивался и сражался с ней на С6.
Проверялось и раньше при миграции приложения, и недавно, сам себе не доверяя за давностью, снова проверял, отвечая в телеконференцию.
Кстати, в 16-битной IDE есть и другие, сходные с этим, ограничения: на число элементов меню во фрейме; на число процедур в едином app.
Учитывайте это при разработке.
Re: Out of Memory (heap overflow
Всем спасибо за отклик. Все лишнее удалил (в основном Tip-ы и Ico-ы). Вопрос для меня решен.
Не думал, что для C6... это может служит ограничением. Для меня 64KB(Пахомыч) - это просто новая копилка.
Не думал, что для C6... это может служит ограничением. Для меня 64KB(Пахомыч) - это просто новая копилка.
Всем пралитарское Спасибо и 'Желаю, чтобы ВСЕ !!!'
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
Out of Memory (heap overflow
Отпишусь сюда, вдруг кому-то понадобится. Сегодня наткнулся на такую ошибку, но в другой ситуации - вылетало после сборки приложения. Кучу всего перекопал, нашел решение методом тыка - надо удалить файл C60pe.dat в папке с кларионом (у кого ентерпрайз видимо будет другое название). Там хранятся для чего-то все пути, когда-либо компилировавшиеся (может кэш какой), и когда он становится примерно 3,5 мб то возникает ошибка. Актуально только для С6 и скорее всего также для более ранних