У меня есть пакет компонентов, который я поддерживаю, TComPort, проект sourceforge. Недавно я решил попытаться собрать версию пакетов для C ++ Builder 2010. Те были построены и установлены. Затем я очистил свою систему (все следы bpl и dcp исчезли!).
Теперь у меня возникла странная ситуация, когда я собираю среду выполнения, собираю и устанавливаю пакет designtime для Delphi 2010 (с суффиксом пакета d14), и пакет designtime компонента обнаруживается и проверяется, когда я нажимаю Components -> Установить пакеты, а также в Project Options, пакет обнаруживается. В любом месте, нажав кнопку COmponents, вы увидите, что эти компоненты есть в этом пакете.
Однако компоненты внутри пакета отсутствуют в палитре инструментов. Там не было никаких реальных изменений в исходном коде этих компонентов. И я понятия не имею, почему Delphi 2010 действует таким образом или почему он сообщает мне, когда я установил свой пакет времени разработки, что пакет компонентов установлен правильно, но тогда компоненты не будут отображаться.
РЕДАКТИРОВАТЬ: (Обходной путь: Изменить строковый параметр «Страница» при вызове RegisterComponents, и эта проблема решена. Однако, это чертовски раздражает, и я не могу понять, как это убрать)
А вот и убийца. Когда я открываю DFM, который содержит этот компонент, он тоже появляется. Это только палитра инструментов, которая сдерживает меня. Да, я сбросил палитру компонентов.
Я также решил вызвать призрак палитры компонентов delphi 7 (щелкните правой кнопкой мыши вверху экрана и выберите компоненты, чтобы получить старую классическую палитру компонентов). И его там тоже нет.
Я подозреваю, что это может быть неприятная ошибка в Delphi 2010. Я надеюсь, что кто-то видел что-то подобное. Это убивает меня, говорю вам, убивает меня.
EDIT:
Я очистил раздел реестра HKEY_CURRENT_USER \ Software \ CodeGear \ BDS \ 7.0 \ Кэш пакета [мои имена пакетов здесь] и не изменил либо
EDIT:
Я изменил RegisterComponents ('foo', [TMyComponent1, ....]) на RegisterComponents ('bar', ...), и внезапно они вернулись. Где Delphi 2010 хранит «Я ненавижу категорию Foo»? Это плохо.