Перейти к содержанию
    

Использование USBXpress с Borland C++ Builder

Привет знатокам!

 

Кто использовал dll библиотеку из пакета USBXpress (для микроконтроллеров C8051F320/340) совместно с Borland C++ Builder? Поделитесь опытом! Сложность в том, что динамическая библиотека создана под VC++, который, как известно, не совместим с Borland C++ Builder!!!

 

С Уважением

Charley

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня была похожая проблема.

 

В комплекте с заказным железом шла динамическая библиотека api_1.dll, заголовочный файл api_1.h и библиотечный файл api_1.lib

 

Проблема была в том, что файл api_1.lib расчитан на подключение к VisualC++ 6.0

(не подходит для подключения к проекту на С++Builder).

 

Как решал проблему:

Сгенерировал для себя библиотечный файл api_1_builder.lib с помощью утилиты implib.exe.

(implib.exe находится в поддиректории Bin той папки, в которую установлен С++Builder).

 

Пример командной строки, с помощью которой была получена

библиотека api_1_strobe_lib2.lib приведен ниже:

implib -a api_1_builder.lib api_1.dll

 

Правда пришлось так же малость подкорректировать заголовочный файл:

 

В исходном заголовочном файле api_1.h были такие строки:

#ifdef API_1_EXPORTS

#define API_1_API __declspec(dllexport)

#else

#define API_1_API __declspec(dllimport)

#endif

 

Их пришлось заменить на на следующие строки:

#ifdef API_1_EXPORTS

#define API_1_API extern "C" __declspec(dllexport)

#else

#define API_1_API extern "C" __declspec(dllimport)

#endif

 

После чего проект в билдере благополучно собрался.

 

Удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В исходном заголовочном файле api_1.h были такие строки:

#ifdef API_1_EXPORTS

#define API_1_API __declspec(dllexport)

#else

#define API_1_API __declspec(dllimport)

#endif

 

Их пришлось заменить на на следующие строки:

#ifdef API_1_EXPORTS

#define API_1_API extern "C" __declspec(dllexport)

#else

#define API_1_API extern "C" __declspec(dllimport)

#endif

 

Спасибо за ответ. Из Вашего ответа только модификация файла заголовка была для меня новой! Все остальное я делал также... Проект компилируется без ошибок, однако не работает... Увы...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...