Серверы In-Process и Out-Of-Process обеспечивают различные Сервисы, особенно в части Пользовательского Интерфейса вашего Приложения.

Expand imageПользовательский Интерфейс

Несмотря на то, что в младших версиях Visual FoxPro вам также предоставлялись возможности использовать Формы для вывода Данных в Приложениях типа Сервер Автоматизации (Automation server), в настоящий момент система Visual FoxPro обладает двумя Библиотеками поддержки Выполнения приложений (Run-Time), которые обеспечивают различные варианты выполнения процессов типа Out-Of-Process и In-Process.

Expand imageСерверы типа In-Process

Модель "внутри-поточного" сервера Автоматизации (.dll), типа In-Process, требует исключения пользовательского Интерфейса. Хотя, в Visual FoxPro 5.0, было возможно (но не рекомендовалось) создавать внутри-поточные Серверы (in-process), где использовались Формы для вывода Информации (как бы - односторонний пользовательский Интерфейс). Тем самым, для указанного типа Серверов частично поддерживался пользовательский Интерфейс, где не поддерживалась обработка обытий Формы. Начиная с версии Visual FoxPro 6, если вы пытаетесь использовать Элементы Пользовательского Интерфейса для внутри-поточных Серверов (in-process), то при компоновке файла .Dll - генерируется Сообщение об Ошибке. Это есть так называемый "неподдерживаемый" Режим.

Expand imageСерверы типа Out-of-Process

Для Серверов Автоматизации, типа Out-Of-Process (.exe), может создаваться Интерфейс Пользователя. Системная функция Visual FoxPro SYS(2335) позволяет Включить или Отключить Пользовательский Интерфейс в Модальных Режимах работы сервера Автоматизации (.exe), типа Out-Of-Process; в этом случае Сервер может управляться Удаленно, без участия Пользователя. Модальные События в пользовательских Формах, Системные Диалоги, выполнение функции MESSAGEBOX( ) и команды WAIT, и аналогичных нормально обрабатывают пользовательский ввод Информации.

Expand imageСм. также