На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: jack128, Rouse_, Krid
  
    > Вызвать функцию по имени , как сделать
      есть такой способ вызова функций по имени, если они совпадают по сигнатуре:

      ExpandedWrap disabled
        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
      1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0125 ]   [ 15 queries used ]   [ Generated: 17.05.24, 16:27 GMT ]