Функция DLLExec в скриптах Digitals для выполнения функций пользователя из динамических библиотек
Пользовательская функция может быть написана на любом языке программирования и должна быть объявлена в библиотеке как
F(S: PAnsiChar): PAnsiChar; stdcall;
Все параметры передаются в виде указателя на ANSI строку, результат работы функции - тоже указатель на строку однобайтных символов. Вызов DLLExec выглядит так
@DLLExec DLLPath.DLLFunction [Parameters]
Пример использования
$S=@DLLExec d:\TestDLL.AddNumbers 44,55
@Dialog.Message $S
В данном примере из библиотеки TestDLL вызывается функция AddNumbers, суммирующая целые или вещественные числа. При использовании вещественных чисел разделитель целой и дробной части, установленный в системе, должен быть точка.
Тестовый проект TestDLL, созданный в Delphi.
В динамических библиотеках могут храниться формы. Это дополнительная возможность создания окон с необходимыми элементами управления, вызываемых из скриптов.
$Params=это заголовок окна
$S=@DLLExec D:\TestFormDLL.CreateInputForm $Params
@Dialog.Message $S