OberonCore https://forum.oberoncore.ru/ |
|
Как правильно добавить систему Ctl https://forum.oberoncore.ru/viewtopic.php?f=1&t=1279 |
Страница 1 из 1 |
Автор: | Алексей_В [ Среда, 10 Декабрь, 2008 22:40 ] |
Заголовок сообщения: | Как правильно добавить систему Ctl |
Вечер добрый! Попробовал добавить в версию 1.5 с сайта OberonCore подсистему Lib (http://www.zinnamturm.eu) Во-первых, не понятно, почему Lib требует (кроме объявленной Ctls и как оказалось Ctl) еще Pac и CpcCompressors. Хотя эти зависимости легко решаются, может можно просто скомпилировать эти упаковщики, не расширяя ими меню, потом собрать Lib и папки упаковщиков просто удалить? Не будет ли это потом источником трудноуловимых ошибок? Но главное, не понятно. При копировании в папку Блекбокса каталого Ctl c OberonCore (раздел Компоненты -> "Подсистема Ctl. Для тех, кому она....") компиляция Lib останавливается с ошибкой "CtlExcel8 - inconsistent import" Пробовал брать каталог Ctl с сайта проекта Информатика-21 - Lib компилируется. Но вдруг такое манипулирование между дистрибутивами вызовет опять-таки ошибки совместимости? |
Автор: | Евгений Темиргалеев [ Среда, 10 Декабрь, 2008 23:06 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Алексей_В писал(а): Попробовал добавить в версию 1.5 с сайта OberonCore подсистему Lib (http://www.zinnamturm.eu)... Это сайт Хельмута Зина с коллекцией компонентов на компонентном паскале. ![]() Алексей_В писал(а): "Подсистема Ctl. Для тех, кому она....") компиляция Lib останавливается с ошибкой "CtlExcel8 - inconsistent import" Пробовал брать каталог Ctl с сайта проекта Информатика-21 - Lib компилируется. Но вдруг такое манипулирование между дистрибутивами вызовет опять-таки ошибки совместимости? Почитайте Docu\Patch в версии с Oberoncore. Я вносил исправления, которые коснулись интерфейса. Если решите использовать патченную версию, приходётся перекомпилировать зависимые модули.
|
Автор: | Иван Кузьмицкий [ Четверг, 11 Декабрь, 2008 07:33 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Компоненты с http://www.zinnamturm.eu заточены под BB 1.6, этот фактор тоже надо учитывать. |
Автор: | Алексей_В [ Четверг, 11 Декабрь, 2008 20:49 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Приветствую! В принципе, c непатченной Ctl (или мало патченной) компонент Lib работает и в версии 1.5 от Информатика-21 ... Но мне нужна судя по всему именно патченная подсистема Ctl, так как я хотел поэкспериментировать с OPC-сервером (сомпонент COM). И в тоже время Lib пригодится... Частично проблема решилась (если я правильно понял Евгения) перекомпиляцией всех файлов из набора Ctl - во всяком случае ошибка "CtlExcel8 - inconsistent import" пропала. Но теперь ругается на "OleViews - - inconsistent import" Наверное, это можно тоже поправить? |
Автор: | Евгений Темиргалеев [ Четверг, 11 Декабрь, 2008 21:37 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
В патче изменен интерфейс процедуры PROCEDURE (obj: OutObject) Invoke* ... в модуле CtlT. Все модули, которые используют эту процедуру (и, возможно сам тип OutObject - тут точно сказать не могу) нужно перекомпилировать. Из стандартного ББ это модули подсистемы Ctl, OleViews. За прочие подсистемы/модули говорить не могу, но перекомпилировать их тоже надо... |
Автор: | Алексей_В [ Четверг, 11 Декабрь, 2008 22:03 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Евгений! Да, спасибо, заработало. Но я просто например из подсистемы Ole открыл файл Views и перекомпилировал его. И еще несколько на всякий случай. А нет ли какой-нибудь команды, чтобы автоматически перекомпилировать все зависимые модули или подсистемы целиком, чтобы не открывать по одному файлу? Вручную не то что бы трудно, но так и пропустить что-нибудь недолго... |
Автор: | Иван Кузьмицкий [ Четверг, 11 Декабрь, 2008 22:16 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Разрешите поинтересоваться, в каких целях используется Ctl? Интерес чисто академический. |
Автор: | Алексей_В [ Четверг, 11 Декабрь, 2008 22:39 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Отвечать точно не мне - я с BlackBox пока знаком на минимуме ![]() |
Автор: | Иван Кузьмицкий [ Пятница, 12 Декабрь, 2008 07:52 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Назначение Ctl описано в справке, она нужна для OLE automation. Я неправильно задал вопрос ![]() |
Автор: | Алексей_В [ Пятница, 12 Декабрь, 2008 10:02 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Да собственно как таковая Ctl для меня не самоцель. Но она требуется для корректной установки Lib. А вот Lib мне нужна для вывода графиков в первую очередь. Возможно, Lib будет работать и с частично скомпилированными модулями, но я пока не могу сказать, где что еще вылезет.... Вот и хотелось бы, чтоб компиляция всей Lib проходила успешно. Мне конечно было бы приятнее, чтобы Lib была заточена под OpenOffice например. И включала в свой состав и софтину промежуточного уровня так сказать. Но чего нет, того нет.... Кроме того, я когда-то читал, что реализации OPC (для взаимодействия с промышленным оборудованием) часто содержат и интерфейсы OLE-автоматизации. Прежде всего к Excel например. Получается, чтобы полностью использовать возможности того или иного OPC сервера, нужен "мост" к MS Office скажем. Или писать самому все то, что разработчики OPC сервера хотели возложить на приложения Офиса. Если не прав - поправьте ![]() |
Автор: | Иван Кузьмицкий [ Пятница, 12 Декабрь, 2008 11:07 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Понятно, спасибо за ответ. Проблема построения отчётов, графиков и диаграмм в офисном пакете стоит и перед нами. Завязываться на офисы мелкософта нереально, потому что невозможно гарантировать уверенный вывод документов в зоопарк версий MS-Office нашими небольшими силами. А с Опенофисом проще, недавно вышедшую 3-ю версию установили на все рабочие места - и порядок. Вот, Пётр Кушнир написал генератор ODF-документа. С его помощью, в формате OpenOffice.org создаются бланки и отчёты в информсистеме Ярославского института развития образования. Но функциональности генератора не хватает, так как нужны ещё электронные таблицы, построение диаграмм и автоматическая обработка документов, открытых в ООо (автоматизация). Ну а на доработку генератора просто не хватает рук ![]() ![]() |
Автор: | hothing [ Пятница, 12 Декабрь, 2008 11:48 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Алексей_В писал(а): Кроме того, я когда-то читал, что реализации OPC (для взаимодействия с промышленным оборудованием) часто содержат и интерфейсы OLE-автоматизации. Прежде всего к Excel например. Получается, чтобы полностью использовать возможности того или иного OPC сервера, нужен "мост" к MS Office скажем. Или писать самому все то, что разработчики OPC сервера хотели возложить на приложения Офиса. Если не прав - поправьте ![]() Для использования OPC, MS Office не нужен, в принципе. Очень рекомендую, сначала по-работать с OPC через VBA (например через тот же Офис), а уж потом крестить его с ББ. В ББ не все гладко с генератором интерфейсов (такая хрень которая генерит код для работы с COM-обьектами), после него еще напильником надо много дорабатывать. Без понимания работы Automation - гиблое дело. |
Автор: | Edward Ivanov [ Пятница, 12 Декабрь, 2008 12:01 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Для создания отчетов можно заюзать две вещи: 1. ReportMan (лежит на www.sourceforge.org), есть ocx для управления им. 2. Fast Report Studio. Но дорого. |
Автор: | Иван Кузьмицкий [ Пятница, 12 Декабрь, 2008 12:35 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Можно и третью вещь заюзать - это генератор отчётов, написанный на ББ. Включает в себя визуальный редактор, возможность работать с произвольными источниками данных, и средства метапрограммирования. Бесплатно и открыто ![]() |
Автор: | Евгений Темиргалеев [ Пятница, 12 Декабрь, 2008 14:26 ] |
Заголовок сообщения: | Re: Как правильно добавить систему Ctl |
Алексей_В писал(а): А нет ли какой-нибудь команды, чтобы автоматически перекомпилировать все зависимые модули или подсистемы целиком, чтобы не открывать по одному файлу? Насколько мне известно, используют команду DevCompiler.CompileThis список модулей, которую набирают руками и сохраняют в документе для повторного исп-я:- Dev\Docu\Build-Tool. - Docu\Compile-List в подсистемах CPC. Посмотрите команду Info->Create Tool. Создает документ, содержащий команд(ер)ы для компиляции выделенных модулей, в правильном порядке. Попробуйте Info->Repository, открыть подсистему Ctl. Выделить все строчки-модули и выполнить эту команду. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |