Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.13;
Скачать: CL | DM;

Вниз

Приложения на Delphi & DLL на Visual C++   Найти похожие ветки 

 
Гибон   (2004-05-29 14:20) [0]

Пыталься реализовать сабж, но ничего путного не вышло, отсюда возник вопрос: как правильно экспортировать функции из DLL (какие директивы указывать, или чего там еще может быть), написанной на Visual C++ и как их потом правильно импортировать в проекты, написанные на Delphi? И с какими еще нюансами я могу столкнуться? Заранее благодарен.


 
DrPass ©   (2004-05-29 14:32) [1]

C++ переименовывает функции для поддержки перегрузки. Поэтому их нужно объявлять как extern "C" в библиотеке либо импортировать в Delphi по индексу, а не по имени


 
Гибон   (2004-05-29 15:58) [2]

Экспортирую так:

extern "C" __declspec(dllexport) long MyAdd(long a, long b)
{
return(a+b);
}
,

импортирую так:

function MyAdd(A, B: Longint): Longint; external "dll_test.dll";.

В результате получаю не понятное постоянное число (5755669), не зависящее от параметров. Если к импорту добавляю stdcall, вроде на мгновение выскакивает правильный результат, а потом сразу "Access Violation". Что я сделал не так?


 
SammIk ©   (2004-05-29 16:01) [3]

А мне кажиттся что вазов в си и стдкалл разные вещи.
попробуи cdecl, могу и ошибаться.


 
Гибон   (2004-05-29 16:26) [4]


> SammIk ©   (29.05.04 16:01) [3]

Помогло, спасибо.



Страницы: 1 вся ветка

Текущий архив: 2004.06.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
8-1080906407
Pa5ha
2004-04-02 15:46
2004.06.13
D3D, Местоположение точки


1-1085991622
Igor
2004-05-31 12:20
2004.06.13
DBRadioGroup


1-1086210700
nitrino
2004-06-03 01:11
2004.06.13
Соответствия типов Delphi <--> VB


3-1084960004
Alex_x
2004-05-19 13:46
2004.06.13
Изменение типа поля в базе.


8-1081155154
Erik
2004-04-05 12:52
2004.06.13
Помогите правильно отобразить иконку из ImageList!