Можно ли создать несколько модулей типа "архиватор"?
После создания второго и более модулей этого типа вылазит ошибка, причем ошибка появляется сразу после того, как присваиваю имя каналу в подмодуле "float" модуля "архиватор"
error 3729: (0): Invalid type 'real' at address: такой то.
я посчитал, памяти должно хватать. израсходовано менее 200 байт. первый модуль "архив" работает нормально. начиная со второго, если имя каналу в модуле "архив" не присвоено, то не ругается. как только присваиваешь выскакивает ошибка. почему?
У ограниченной лицензии в области Q может быть до 234 байт.
Второй архиватор уже использует память начиная с 232 байта.
Овен мастер заканчивается на границе 204 байта. Что-то надо сокращать. Или делать архиватор вручную через библиотеку SysLibFile.lib Там никаких ограничений нет
Владислав, а если мне требуется 6 модулей типа архиватор, то мне в любом случае, независимо от лицензии, прийдется писать их с помощью библиотеки SysLibFile.lib?
именно так. Для обширных задач архивации лучше использовать библиотеку.
Этому есть неск. причин:
1. Не используется пространство I/O
2. модуль архиватора вынужден при каждой записи открывать файл, записывать в конец и закрывать его - это требует времени, пропорционального размеру файла и поэтому размеры файлов для архиватора должны ограничены. При использовании библиотеки Вы можете один раз открыть файл и держать его открытым. При этом запись будет происходить на существенно большей скорости.
3. Выбранный нами формат архива не всем подходит, а с библиотекой можно использовать любой тип архива.
4. Модуль архиватора разрабатывался как простая штука для тривиальных задач, как его пытаются использовать люди мы и представить себе не могли.