Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема -использование obj файлов в Дельфи


Geo ©   (2002-04-02 17:09:00) 

Проблема в следующем -
Написал тестовый Obj файл на Builder с функцией -
extern "C"
{
void pascal MYFUNC(void)
{
return ;
};
}


Пытаюсь прилинковать в Дельфи -
{$L "CUnit" }
procedure MYFUNC(); external;

Говорит -ошибка Unsatisfied forward or External declaration.
Что делать не понятно.
У кого есть хоть какой то опыт при приликовке любых obj в Delphi пишите!


Alx2   (2002-04-03 14:46:00) [1]

Из проекта убираем модуль, где лежит myfunc, меняем ему расширение на *.c и убираем extern "C" (в моем варианте int _stdcall MYFUNC(int a) { return a + 1;}) снова добавляем его в проект - у меня заработало :)


Geo   (2002-04-02 17:36:00) [2]

Выслал obj на мыло


Alx2   (2002-04-02 17:30:00) [3]

У меня:
"C:\Program Files\Borland\Delphi5\Source\Rtl\Sys\system.pas"
Вышли только obj и побыстрее :) - сваливаю скоро


Geo   (2002-04-02 17:28:00) [4]

Могу отослать проекты и obj - они маленькие


Geo   (2002-04-02 17:26:00) [5]

Спасибо за ответы
Скажи а где это посмотреть - procedure _EofFile; external; {$L EofFile }


Alx2   (2002-04-02 17:25:00) [6]

Блин, я бы все-же залез внутрь OBJ, убедиться, что она там так зовется


Alx2   (2002-04-02 17:21:00) [7]

Например, в системных библиотеках есть такая прилинковка:
procedure _EofFile; external; {$L EofFile }


Geo   (2002-04-02 17:17:00) [8]

называется MYFUNC (мы долго с этим крутили - extern "C" ,pascal)
К Builder нормально прилинковывается.


Alx2   (2002-04-02 17:14:00) [9]

Посмотри в OBJ файле или в map, полученном при его компиляции как на самом деле называется Myfunc. Кажется, там в название досыпается еще пригоршня доп. информации.


Наверх

Титульная страница Поиск, карта сайта Написать письмо