Адрес этой странички : http://spcalc.narod.ru/spcalc_func_dll.htm
spCalc
.exe
Простой программируемый калькулятор.  

Интерпретатор скриптов.


ВНИМАНИЕ !
Прежде, чем читать этот документ, крайне рекомендуется детально ознакомиться с документом :
"Библиотека скриптов FastScript 1.4. Руководство разработчика" ( http://spcalc.narod.ru/download/fs14_ru_rtf.zip ). 


Список процедур и функций

 

Внешние процедуры и функции (подгружаемые из DLL)

Начиная с версии 1.35 появилась возможность вызывать внешние процедуры и функции из DLL-модулей.
При этом, экспортируемые процедуры и функции должны быть сформированы определенным образом.

Все входные и выходные параметры процедур и функций загружаемых DLL-модулей 
должны передаваться, как массив типа VARIANT (см. пример ниже).
Все функции должны возвращать результат типа VARIANT (см. пример ниже).
Значения выходных параметров (после выполнения функции) можно прочитать,
используя функция SYS_ProcFuncDLL_GetResult.

 

Загрузить DLL-модуль (макс. кол-во загруженных модулей = 4)
  function SYS_LoadDLL(NumDLL : integer; DLL_FileName : string) : boolean;

NumDLL – внутренний порядковый номер (0..3) в буфере для загружаемых DLL-модулей.
DLL_FileName – полное имя файла загружаемого модуля.
 Возвращаемое значение:  TRUE, если успешно
После загрузки модуля можно обращаться к его процедурам и функциям по этому номеру (см. ниже).
Пример:
     
if SYS_LoadDLL(0,'MyDLL_001.dll') then begin
     
     
   end;

 

Выгрузить DLL-модуль
 
function SYS_UnLoadDLL(NumDLL : integer) : boolean;

NumDLL – внутренний порядковый номер (0..3) в буфере для загружаемых DLL-модулей, соответствующий выгружаемому модулю.
 Возвращаемое значение:  TRUE, если успешно
Пример:
     
SYS_UnLoadDLL(0);

 

Вызов процедуры из загруженного DLL-модуля
 
function SYS_CallProcDLL(NumDLL : integer;
                           ProcName: string;
                           Var Params : Variant) : boolean;


NumDLL – внутренний порядковый номер (0..3) в буфере для загружаемых DLL-модулей.
ProcName – имя вызываемой процедуры.
Params – передаваемые в вызываемую процедуру входные и выходные параметры.
Возвращаемое значение:  TRUE, если успешно
Пример:
 
SYS_CallProcDLL(0,'HelloWorld', ['Privet!']);


 

Вызов функции из загруженного DLL-модуля
 
function SYS_CallFuncDLL(NumDLL : integer;
                           FuncName: string;
                           Var Params : Variant) : variant;


NumDLL – внутренний порядковый номер (0..3) в буфере для загружаемых DLL-модулей.
FuncName – имя вызываемой функции.
Params – передаваемые в вызываемую процедуру входные и выходные параметры.
Возвращаемое значение:  то, что вернет вызываемая функция …

 

Прочитать значения выходных параметров последней выполненной процедуры (функции)  из DLL-модуля.
 
function SYS_ProcFuncDLL_GetResult(NumParam : integer) : variant;


NumParam –порядковый номер (начиная с 0-ля) параметра (нумерация в том же порядке, как и ВСЕ переданные процедуре (функции) параметры (как входные, так и выходные).
 Возвращаемое значение:  значение параметра (если
NumParam выходит за пределы актуальности, то возвращаемое значение = UnAssigned)

 


Пример простого модуля DLL (MyDLL_001.dll).

 

 

Пример работы с MyDLL_001.


 

 



© Sergey Popov, Usinsk, Komi, 2007 .. 2008

Hosted by uCoz