реклама на сайте
подробности

 
 
> Использование USBXpress с Borland C++ Builder
Charley
сообщение Jul 20 2006, 07:37
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 46
Регистрация: 10-11-05
Из: Chisinau
Пользователь №: 10 697



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

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

С Уважением
Charley
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
o-henry
сообщение Jul 20 2006, 08:06
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 435
Регистрация: 8-03-06
Из: степей Украины
Пользователь №: 15 069



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

В комплекте с заказным железом шла динамическая библиотека 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

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

Удачи.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 21:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01371 секунд с 7
ELECTRONIX ©2004-2016