Вниз
Скачать: CL | DM;

Загрузка модулей, которые содержать компоненты DevExpress   Найти похожие ветки 

← →
Сатир   (2007-10-18 16:32) [0]

Есть приложение, которое в режиме рантайма подгружает разные модули(bpl). Если один из bpl-модулей содержит компоненты из пакета DevExpress, при его загрузке выдает сообщение:
---------------------------
Error
---------------------------
A class named TcxRect already exists
---------------------------
OK  
---------------------------
Как с этим бороться и что нужно сделать, чтобы модули нормально загружались?
Заранее благодарен за помощь.


← →
Игорь Шевченко ©   (2007-10-18 16:36) [1]

значит один из пакетов включил в себя пакет от DevExpress и оба вызвали registerclass. перекомпилировать тот, что включил


← →
Сатир   (2007-10-18 17:07) [2]

Этот класс содержится в пакете cxLibraryVCL6.bpl. Его перекомпилил.
Свой модуль тоже перекомпилил, который содержит этот пакет.
Ничего не помогло.
Даже убрал из секции Requires cxLibraryVCL6.dcp и перекомпилил.
Эффект остался тот же самый


← →
Reindeer Moss Eater ©   (2007-10-18 17:12) [3]

Даже убрал из секции Requires cxLibraryVCL6.dcp и перекомпилил.

Убрал из requires - тогда модуль точно будет прикомпилирован к этому пакету.


← →
Сатир   (2007-10-18 17:19) [4]

так что нужно сделать, чтобы модуль нормально загрузился? и не выдавалось никаких сообщений?


← →
Reindeer Moss Eater ©   (2007-10-18 17:23) [5]

Чудак человек.
Надо чтобы модуль был в одной bpl и не надо дважды делать registerclass


← →
Сатир   (2007-10-18 17:26) [6]


> Надо чтобы модуль был в одной bpl и не надо дважды делать
> registerclass

у меня модуль в одной bpl и я ни разу не делаю RegisterClass


← →
Reindeer Moss Eater ©   (2007-10-18 17:27) [7]

Значит твое сообщение - просто оптический обман.
Игнорируй его.

:)


← →
Reindeer Moss Eater ©   (2007-10-18 17:30) [8]

у меня модуль в одной bpl

А её копий может быть несколько и они могут быть разные. И какая грузится при loadpackage - только винда знает.

и я ни разу не делаю RegisterClass
Значит злые духи делают это вместо тебя.


← →
Сатир   (2007-10-18 17:40) [9]

когда в экзешнике, который загружает этот модуль, указал Build with runtime packages и добавил cxLibraryVCL6, то вылезло другое сообщение
---------------------------
Error
---------------------------
A class named TcxGridLevel already exists
---------------------------
OK  
---------------------------


← →
Reindeer Moss Eater ©   (2007-10-18 17:48) [10]

Если настоящая причина ошибки тебе не нравится и ты в нее не веришь, то попробуй тогда дефрагментировать диск или протереть монитор. Вдруг поможет.


← →
Сатир   (2007-10-18 17:50) [11]

всё, разобрался
надо было включить рантаймовые пакеты девэкспреса в экзешник


← →
Reindeer Moss Eater ©   (2007-10-18 18:04) [12]

Ну естественно. Если модули в uses у exe, а бпл девэкспресса не в списке рантайм пакетов проекта, то модули линкуются в ехе.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.014 c
3-1183627926
Jakudza
2007-07-05 13:32
2007.11.18
Произведение по столбцу в FireBird


2-1193493258
antonn
2007-10-27 17:54
2007.11.18
вызов процедуры по адресу


15-1192448141
alshtam
2007-10-15 15:35
2007.11.18
прозрачная шифрация


15-1192431257
KSergey
2007-10-15 10:54
2007.11.18
Миллионер Марк Шаттлворт ... выпускает массовый ноутбук (250$)


6-1174150195
Dmitry_177
2007-03-17 19:49
2007.11.18
Вопрос по серверной части программы




   Наверх