C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
BDS2006+Ehlib, А как под C++?
gen
Отправлено: 11.05.2006, 10:52


Дежурный стрелочник

Группа: Участник
Сообщений: 36



Привет!

Кому-нибудь удалось заставить работать EhLib под С++.
Под Delphy устанавливается и работает (по крайней мере v4.X), а как насчет C++?
olegenty
Отправлено: 11.05.2006, 11:37


Ветеран

Группа: Модератор
Сообщений: 2412



ставишь под Delphi с опцией "Generate C++ Builder Files" (или как-то так она звучит) в опциях линковки проекта.

после такой установки спокойно юзаешь из C++ Builder.
gen
Отправлено: 11.05.2006, 13:50


Дежурный стрелочник

Группа: Участник
Сообщений: 36



А какая версия, если не секрет, так заработала?
Проблема в том, что даже при указанных опциях линковщика не хотят создаваться obj файлы, соответственно, библиотека устанавливается, можно поместить компоненты в проект и даже скомпилировать его, но бутет фатальная ошибка линковщика, когда не обнаружаться obj файлы. Задавал вопрос на форуме EhLib, вот цитата из ответа Большакова:
QUOTE
Мне не удалось добиться 100%-ого формирования всех файлов для C++ при компиляции
пакетов. BDS 2006 почему то не хочет создавать obj файлы.
Хотя в опциях пакета стоит — Generate all C++Builder files

Если это можно побороть, то можно подетальнее информацию. Спасибо.
olegenty
Отправлено: 11.05.2006, 14:17


Ветеран

Группа: Модератор
Сообщений: 2412



у меня obj файлов тоже нет, но почему-то компилируется. установлен update 2.
gen
Отправлено: 11.05.2006, 14:52


Дежурный стрелочник

Группа: Участник
Сообщений: 36



Мда... видать с BDS2006 без бубена накак. У меня версия 4.1 работает только под Delphy.
Но тут в после часовых размышлений и плясок удалось запустить самую распространенную 3.6
Если кому интересно, то сделал так:
взял пакеты от BCB6, в EhLib.Inc добавил блок
CODE
{$IFDEF VER180}         { Borland Delphi 2006 }
 {$DEFINE EH_LIB_5}
 {$DEFINE EH_LIB_6}
 {$DEFINE EH_LIB_7}
 {$DEFINE EH_LIB_8}
 {$DEFINE EH_LIB_9}
{$ENDIF}

в файле DbUtilsEh.pas в добавил недостающие 4 типа данных:
CODE
 STFldTypeMapEh: array[TFieldType] of TSTOperandTypeEh = (
   botNon, botString, botNumber, botNumber, botNumber,
   botBoolean, botNumber, botNumber, botNumber, botDateTime, botDateTime, botDateTime,
   botNon, botNon, botNumber, botNon, botString, botNon, botString,
   botNon, botNon, botNon, botNon, botString, botString,
   botNumber, botNon, botNon, botNon, botNon
{$IFDEF EH_LIB_5}
   ,botNon, botNon, botNon, botNon, botNon, botString
{$ENDIF}
{$IFDEF EH_LIB_6}, botDateTime, botNumber{$ENDIF}
   ,botNon,botNon,botNon,botNon);

Далее все как обычно, компилим, подключаем, дабавляем в опциях путь к папке библиотеки.
Тестовый пример вроде работает, но полностью оценить функциональность можно только через время.
Gedeon
Отправлено: 15.05.2006, 12:54


Ветеран

Группа: Модератор
Сообщений: 1742



У меня работает под бсб 4.какая-то, как ставил не помню, значит траблов не было.

Вернуться в Borland Developer Studio 2006