Класс TLargeintField не найден

Я использую C++ Builder 2009.

Я занимался международной работой над одним из моих проектов. Я обновил свои компоненты запросов до компонентов UniQuery и все мои соединения БД с UniDAC. Теперь, когда я запускаю свою программу, некоторые формы будут генерировать исключения при создании формы.

Project X.exe raised exception class EClassNotFound with message 'Class TLargeintField not found'.

Когда я читал в Интернете, некоторые предложения заключались в том, чтобы удалить все поля в компоненте запроса и прочитать их, что я и сделал, и до сих пор получаю те же сообщения. Мне интересно, если я делаю что-то не так, или мне нужно добавить ссылку на VCL? http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/DB_TLargeintField.html

Любые идеи / предложения приветствуются.

Дополнительная информация:

Ниже приведен скриншот сообщения об ошибке.

Исходя из сообщения об ошибке, я чувствую, что у меня может быть ссылка на заголовочный файл должным образом, но я не обращаюсь к файлу lib должным образом.

Я считаю, что файл заголовка для VCL будет в:

C:\Program Files (x86)\CodeGear\RAD Studio\6.0\include\vcl

Я попытался добавить следующее в путь lib, но он все еще не может найти класс:

C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib
C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\release
C:\Program Files (x86)\CodeGear\RAD Studio\6.0\lib\psdk

Есть идеи?

2 ответа

Решение

Я выяснил причину проблемы. Эта конкретная проблема связана с инструментом перевода korzh, в котором после внесения изменений в форму необходимо обновить языковые файлы. Этот процесс запускает компилятор несколько раз и, насколько я могу судить, обновляет разные dfm для каждого из файлов. Это сообщение появлялось, когда настройки моего региона были установлены на Itailian (Италия), и, похоже, ссылались на старую версию dfm. После обновления языков, похоже, что мои другие попытки (удаление, а затем чтение полей в компоненты UniQuery) решили проблему...

Если я правильно помню, DAC хочет иметь TLargeIntFile например, поля для вычисляемых значений, но при добавлении полей к запросу они создаются как обычные целые числа.

В моем случае я просто изменил файл формы.dfm и вручную изменил тип поля:

object QMinutes: TLargeintField
Другие вопросы по тегам