Распечатать страницу

Запуск и выход из приложения VFP

« Назад

Запуск APP-файла выполняется командой DO, например:

do Gallery.app

В VFP можно запустить произвольный внешний исполняемый файл, в том числе и созданный в VFP.

Команда

RUN [/N] MS-DOSCommand | ProgramName

или

! [/N] MS-DOSCommand | ProgramName

выполняет внешнюю команду или программу.

Опция и параметры:

MS-DOSCommand – команда MS-DOS.

ProgramName - Windows- или MS-DOS-программа или приложение.

/N – задает NOWAIT. Опция включается, если ProgramName – это Windows-приложение.

Замечание. Нельзя запускать из VFP программы, реорганизующие диск, например CHKDSK, поскольку в результате это может повредить VFP.

Примеры:

&& Запускается карта символов

! /n CharMap.exe

&&

&& Запускается программа настройки свойств Экрана

! /n Control Color

Сразу после опции /N (без пробелов) можно указать число, определяющее вид открываемого окна:

  • 1 – активное, нормальный размер;

  • 2 – активное, минимизированное;

  • 3 – активное, максимизированное;

  • 4 – неактивное, нормальный размер;

  • 7 – неактивное, максимизированное.

По умолчанию запускаемая MS-DOS-программа не должна превышать 256K. При нарушении этого условия должен быть соответствующим образом откорректирован файл Foxrun.pif.

Команда

QUIT

завершает текущий сеанс VFP и передает контроль операционной системе.

Следует всегда выполнять эту команду (явно или неявно, например посредством Alt+F4) для завершения работы VFP. Если выключить компьютер, не выполнив этой команды, то открытые файлы могут быть повреждены и данные утеряны; временные файлы могут остаться на диске.

Команда

ON SHUTDOWN [Command]

задает команду Command, выполняемую при попытке выйти из VFP или Microsoft Windows, когда исполняется VFP.

Вызов ON SHUTDOWN без Command освободит текущую ON SHUTDOWN-команду.

Пример. В командном окне выполняется команда.

ON SHUTDOWN do d:\OnShutDownProc.prg

В файл d:\OnShutDownProc.prg помещен следующий код:

&&

#include FoxPro.h

&&

quitApp = MessageBox("Завершить работу?", ;

    MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON1, "Конец сеанса")

if quitApp = IDYES then

close all

quit                                     && Завершаем работу приложения

endif

В такой ситуации выполнение QUIT, например в командном окне, или нажатие Alt+F4 приведет к вызову программы d:\OnShutDownProc.prg; работа приложения будет завершена при положительном ответе на MessageBox-вопрос.