Почему Pascal Script ожидает еще одну точку с запятой рядом с моим объявлением внешней функции?

Я написал функцию в C ++, делая DLL:

functions.h:

#ifndef FUNCTIONS_H
#define FUNCTIONS_Hint DLLsquare(int x);
#endif  /* FUNCTIONS_H */

functions.cpp:

#include "functions.h"int DLLsquare(int x){
return x*x;
}

Я скомпилировал это в DLL. Теперь я хотел бы импортировать это в Pascal Script:

program TestDLL;

function Square(x: Integer): Integer;
external '[email protected]';

begin
end.

Теперь это не компилируется. Я получил:

(7: 1): точка с запятой (‘;’) ожидается в строке 6
Компиляция не удалась.

Несколько уроков в Интернете говорят мне, что это именно тот путь, так чего мне здесь не хватает?

3

Решение

Pascal Script выдаст ошибку «точка с запятой», если вы объявляете внешнюю функцию и у вас нет обработчика, назначенного OnExternalProc событие.

Вы можете реализовать это самостоятельно, или вы можете использовать DllExternalProc от uPSC_dll Блок. Рассмотреть вопрос о звонке RegisterDll_Compiletime на вашем компоненте компилятора, который назначает OnExternalProc событие и регистрирует две функции для вызова ваших скриптов, UnloadDll а также DLLGetLastError,

Хотя и понятно, что возникает ошибка, когда хост-программа не предоставила средств для обработки внешних функций, конкретная формулировка сообщения об ошибке бессмысленна. Я призываю вас подать проблему с проектом, чтобы улучшить его.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]