Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как вызвать функцию по имени?

01.01.2007

есть такой способ вызова функций по имени, если они совпадают по сигнатуре:

function TestFunc1(d: Double): Integer;
begin
 
....
end;
 
function TestFunc2(d: Double): Integer;
begin
 
....
end;
 
exports
  TestFunc1
,
  TestFunc2
;
 
procedure TForm1
.Button1Click(Sender: TObject);
var
 
Func: function (d: Double): Integer;
begin
 
@Func := GetProcAddress(hInstance, PChar(Edit1.Text));
 
if @Func = nil then
   
raise Exception.CreateFmt('Функция с именем "%s" не существует', [Edit1.Text]);
 
ShowMessage(IntToStr(Func(10.63)));
end;

Автор: jack128