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

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

DLL в C++ для Delphi [D7, XP]


VMF ©   (2009-04-20 15:17:00) 

Добрый день! Хочу получить возможность вызывать функцию написанную в VS 2003 на С++ при помощи DLL. Делаю объявление:
extern "C" void PASCAL EXPORT MyTestFunction(int A, int &B);
Код функции тестовый (не привожу). Но в адресном пространстве функция не появляется: и depends ее не показывает и GetProcAddress(LibHandle, 'MyTestFunction') возвращает nil ...


VMF   (2009-04-20 15:44:00) [1]

Перепуг прошел, т.к. по [3] получилось. Спасибо всем


Сергей М.   (2009-04-20 15:40:00) [2]


> получаю DLL для использовании в Delphi


С какого перепугу ?
Где в св-вах VS-проекта фигурирует слово "Delphi" ?
Delphi подразумевает PASCAL, но не наоборот ..

Экспортируй как показано в [3]

Соотв-но импорт д.б. с соглашением STDCALL


VMF   (2009-04-20 15:33:00) [3]

В VS создаю проект MFC DLL (Regular DLL with MFC statically linked) и получаю DLL для использовании в Delphi. Полагал, что файл def формирует VS и корректировать его не имеет смысла...


Rouse_   (2009-04-20 15:31:00) [4]

extern "C" __declspec(dllexport) void WINAPI MyTestFunction(int A, int &B);
+ в exports.def

LIBRARY "bla-bla"
EXPORTS
   MyTestFunction=MyTestFunction


clickmaker   (2009-04-20 15:24:00) [5]

> в адресном пространстве функция не появляется: и depends
> ее не показывает

а если в def файле ее прописать?


Сергей М.   (2009-04-20 15:19:00) [6]


> функцию написанную в VS 2003 на С++ при помощи DLL


Нишиша не понятно ..

Как DLL может "помочь" что-то там где-то там "написать" ?


Наверх

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