Общий проект Delphi и Lazarus
Модератор: Модераторы
Общий проект Delphi и Lazarus
Кто-нибудь может что-нибудь посоветовать?
Есть большой проект на Дельфи (около 150 форм), который постоянно в работе. Есть необходимость перетащить его в Лазаря. Существует ли способ паралельной работы с файлами из обоих сред, хотя бы с кодом (формы правятся редко)?
Есть большой проект на Дельфи (около 150 форм), который постоянно в работе. Есть необходимость перетащить его в Лазаря. Существует ли способ паралельной работы с файлами из обоих сред, хотя бы с кодом (формы правятся редко)?
- NXP
- постоялец
- Сообщения: 187
- Зарегистрирован: 02.01.2008 15:11:56
- Откуда: Воронеж
- Контактная информация:
Vlad04 писал(а):Существует ли способ паралельной работы с файлами из обоих сред, хотя бы с кодом (формы правятся редко)?
Я думаю, что это большой гимор
ИМХО лучше попариться и перетянуть все под лазаря, и спокойно работать с кодом
Года 2 назад я так тоже хотел. Потом хорошо подумал, и забил на весь Borland, теперь и не вспоминаю про него.
Borland, кстати, давно прогнулась под M$
Ладно, буду пробовать.
Следующий вопрос в Лазаре 9.24 с панели компонент убрали TMaskEdit, а библиотеке LCL он есть. Соответственно создать свой компонент TMaskEdit Лазарь не дает (типа такой компонент уже существует), а в проекте он активно используется (порядка 1500 раз).
Есть ли какой-нибудь способ подменить в библиотеке LCL имеющийся компонент на свой.
Следующий вопрос в Лазаре 9.24 с панели компонент убрали TMaskEdit, а библиотеке LCL он есть. Соответственно создать свой компонент TMaskEdit Лазарь не дает (типа такой компонент уже существует), а в проекте он активно используется (порядка 1500 раз).
Есть ли какой-нибудь способ подменить в библиотеке LCL имеющийся компонент на свой.
Attid, спасибо. Спас от огромного гимора.
Я уж думал сдублировать в Дельфи компонент TMaskEdit c именем, например, TVCLMaskEdit и поменять в проекте все включения во всех формах (повторяю около 1500 раз).
Есть еще вопрос. В Дельфи активно используется условная компиляция и необходимый вариант проекта собирается путем задания в опциях проекта спец ключей. В Лазаре в настройках проекта возможности задания таких ключей не нашел?
Также при пересборке ИДЕ (при включении компонент) периодически начинает требовать winspool32.drv и не грузит среду. Помогает запуск резервной копии Лазаря и пересборка в режиме Cleanup All+Build. Чего ему надо?
Я уж думал сдублировать в Дельфи компонент TMaskEdit c именем, например, TVCLMaskEdit и поменять в проекте все включения во всех формах (повторяю около 1500 раз).
Есть еще вопрос. В Дельфи активно используется условная компиляция и необходимый вариант проекта собирается путем задания в опциях проекта спец ключей. В Лазаре в настройках проекта возможности задания таких ключей не нашел?
Также при пересборке ИДЕ (при включении компонент) периодически начинает требовать winspool32.drv и не грузит среду. Помогает запуск резервной копии Лазаря и пересборка в режиме Cleanup All+Build. Чего ему надо?
Vlad04
Ключи компиляции можно задавать в диалоге параметров компилятора (Проект -> Параметры компилятора) на вкладке "Другое" (поле "Параметры пользователя").
Есть еще вопрос. В Дельфи активно используется условная компиляция и необходимый вариант проекта собирается путем задания в опциях проекта спец ключей. В Лазаре в настройках проекта возможности задания таких ключей не нашел?
Ключи компиляции можно задавать в диалоге параметров компилятора (Проект -> Параметры компилятора) на вкладке "Другое" (поле "Параметры пользователя").
alexs писал(а):какая-то левая компонента сходит с ума или балуется?
Так в том то и дело, что при пересборки среды из окна компонента переодически выдает этот прикол. Запускаешь резервную копию, выбираешь Инструменты -> Настройка сборки сборки -> CleanUp and Build. Пересобирает и работает без внесения каких-либо изменений. Очевидно настройки сборки разные.
Сегодня столкнулся с такими чудесами: взял TMaskEdit из Дельфи, вставил в Лазаря как TVCLMaskEdit - все работает замечательно. Подменяю им TMaskEdit в LCL, компилируется, вставляется, запускается и даже помещается на форму, однако при попытке изменить свойство EditMask выдает Неизвестная ошибка Runtime error 202 и убивает среду.
Максим писал(а):Ключи компиляции можно задавать в диалоге параметров компилятора (Проект -> Параметры компилятора) на вкладке "Другое" (поле "Параметры пользователя").
С каким ключем их указывать?
alexs писал(а):Скорее всего отличается реализация какихто функци в дельфине и в лазаре - поэтому и глюк - смотри то что использует этот компонент и ищи отличия.
Непохоже, потому что переименовал предка, взятого из дельфи, в TVCLCustomMaskEdit и вставил в файл старый (кастрированный) TCustomMaskEdit. Соответственно TMaskEdit стал наследником TVCLMaskEdit, а имеющиеся в LCL компоненты по прежнему ссылались на TCustomMaskEdit. И все работает на ура. Очевидно проблема с ресурсным файлом LCL.
Чем отличается использование класса TFrame в Delphi и Lazarus. При конвертировании проекта на одну из форм выдает:
INHERITED expected on line 59
Код: Выделить всё
inline DepFrame: TDepFrame
Left = 9
Top = 14
Width = 513
Height = 396
TabOrder = 3
end
INHERITED expected on line 59
