Вниз
Скачать: 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.021 c
2-1193244294
Чайник
2007-10-24 20:44
2007.11.18
Drag & Drop из сторонних приложений - RegisterDragDrop


2-1193236815
Alex_C
2007-10-24 18:40
2007.11.18
Снять аттрибут занятости файла в NTFS


15-1192118907
Kolan
2007-10-11 20:08
2007.11.18
Еще раз вопрос про BugTracking, старая ветка пропала&#133


15-1192060491
Dmitry S
2007-10-11 03:54
2007.11.18
Нужен ли вопросительный знак


15-1192696869
Shlomo
2007-10-18 12:41
2007.11.18
С D7 проект перешёл в D2006 и стал требовать DsnDBCst.pas/dcu – у




   Наверх