Я ищу правильный метод для создания DLL в C ++ и вызова его в Delphi. Я использую CodeBlocks для DLL и Delphi RAD Studio 10.2.
Мой заголовок C ++ и исходный код для сборки DLL, как описано в Как создать dll в C ++ для использования в C # следующим образом:
Main.h:
#ifndef MATH_HPP
#define MATH_HPP
extern "C"
{
__declspec(dllexport) int __stdcall math_add(int a, int b);
}
#endif
Main.Cpp:
#include "main.h"
int __declspec(dllexport) __stdcall math_add(int a, int b)
{
return a + b;
}
Этот код в CodeBlocks создает math_dll.dll
без ошибок.
Вызов DLL в Delphi:
function math_add(X, Y: Integer): Integer; stdcall; external 'math_dll.dll' name 'math_add';
Но когда я запускаю Delphi и вызываю эту функцию, у меня появляется следующая ошибка:
"точка входа в процедуру math_add не может бытьнаходится в библиотеке динамических ссылок math_dll.dll "
Какая часть моего кода неверна?