В системе Visual FoxPro, вы можете компилировать исходный программный Код во время выполнения пользовательского Приложения, в режиме Run-Time, который поддерживается библиотеками VFP9R.dll или VFP9T.dll. Дополнительную информацию об указанных библиотеках смотрите в разделе:  Библиотеки Visual FoxPro Run-Time.

NoteОбратите внимание

Младшие версии Visual FoxPro использовали Макро-Подстановки или вычисления каждой параметризированной строки программного Кода во время выполнения Приложения. Данный процесс не всегда бал Оптимальным по причинам величины и сложности исходного программного кода, а также больших Издержек при выполнении оператора макро-подстановки  &, или системной функции EVALUATE( ).

Стандартная команда COMPILE теперь доступна при выполнении Приложения (в режиме Run-Time), поэтому ваше приложение может создавать и компилировать программные файлы (.prg). Режим Компиляции Run-time работает со всеми поддерживаемыми в команде COMPILE: Процедуры, Формы, Классы, Этикетки, Отчеты, Контейнеры Баз Данных. Вы можете использовать стандартную функцию STRTOFILE( ) для формирования требуемого Программного файла (.prg).

Есть несколько различий между Компилятором для Среды Разработки (Design-Time) и Компилятором режима Run-Time:

  • Опция  "?" команды COMPILE (применяется для выбора файла),  не поддерживается в режиме Run-Time; это объясняется тем, что Серверы Автоматизации (.dlls) не поддерживают Диалогов с Пользователем, что предполагает указанная опция "?".

  • Стандартная команда SET DEVELOPMENT - не поддерживается в режиме Run-Time.

    В режиме Среды Разработки (Design-Time), команда SET DEVELOPMENTопределяет, что Visual FoxPro выполняет сравнение даты и времени Объектного Кода и последнюю Редакцию Файла Исходного Кода (чтобы выполнить компиляцию новой версии). Если установлено SET DEVELOPMENT = ON, всегда выполняется самая последняя версия программного Кода (при необходимости Код - перекомпилируется). В режиме Run-Time, вам требуется явно выполнить команду COMPILE, для компяляции Исходного Кода. Это означает, что при выполнении стандартной команды DO в режиме Run-Time никогда не выполняется исходный файл .PRG. К тому же, в режиме Run-Time, команда DO игнорирует расширение заданного на выполнение файла, рассматривается только .FXP, если даже специально указывается .PRG.

Expand imageСм. также