События OnGetUnit и OnGetILUnit

отредактировано 06:06 Раздел: FastScript
У TfsScript есть два указаных события. На форме лежат два компонента TfsScript, хотелось иметь возможность в одном из них описать набор функций, который использовать во втором. Могут ли данные события помочь в этом вопросе. Установка точек останова на данные события ни к чему не приводит - они просто не вызываются.

Тестовый пример такой

В первом скрипте
program inner;

procedure test;
begin
  ShowMessage('test');
end;

begin
end.

Во втором
написал:
program outer;
uses inner;
begin
  test;
end.

На OnGetUnit второго скрипта навешен обработчик
написал:
  if UnitName='inner' then
    UnitText := fsScript1.Lines.Text;

Первый скрипт компилируется успешно, компиляция второго вызывает ошибку
identifier expected в строке 2:6. Обработчик события не вызывается.

Комментарии

  • отредактировано 06:06
    А если попробывать так???
    program outer;
    uses 'inner';
    begin
      test;
    end.
    

  • отредактировано 06:06
    Спасибо, так работает. Точнее, компилируется. В run-time при запуске второго скрипта получаем identifier redeclared 'test'.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.