Определяет, выполняет ли система Visual FoxPro поиск описания Объекта в реестре Windows, если невозможно определить расположение данного объекта.
SET OLEOBJECT ON | OFF |
Параметры
- ON
-
(По-умолчанию) Определяет, что при невозможности определить описание Объекта, система Visual FoxPro выполняет поиск необходимого описания в Реестре Windows.
- OFF
-
Определяет, что поиск в Реестре не выполняется Visual FoxPro.
Комментарии
При создании Объекта, с помощью функций CREATEOBJECT( ) или GETOBJECT( ), Visual FoxPro выполняет Поиск его описания в следующем порядке:
-
по базовым классам Visual FoxPro.
-
по объявленным Классам, в памяти; в порядке их загрузки.
-
по объявленным классам в текущем программном модуле.
-
по объявленным классам из библиотек классов (.vcx), открытым командой SET CLASSLIB.
-
по объявленным классам из процедурных файлов, открытым командой SET PROCEDURE.
-
по объявленным классам, в цепи выполняемых программ, запущенных командой (См. детально DO, команда).
-
по Реестру Windows.
Когда Visual FoxPro находит описание необходимого объекта в Реестре, то выполняется немедленная загрузка в память поддержки соответствующего объекта COM, при этом память рабочей станции, требуемая для выполнения Поиска - не освобождается. Данное обстоятельство значительно ограничивает использование памяти другими активными приложениями.
Совет. Если ваши, разрабатываемые приложения не используют поддержки объектов COM, выполните команду SET OLEOBJECT OFF - для ограничения поиска в Реестре необходимой информации об объектах, что достаточно оптимизирует использование памяти рабочей станции.
SET OLEOBJECT не распространяет свое действие на объекты COM, размещенные в Формах или полях типа General. Система Visual FoxPro всегда создает необходимое описание объектов COM, размещая их на формах, это происходит в момент разработки рассматриваемых Форм или классов типа OLE; данное справедливо также для полей типа General, при первом их открытии.
Поскольку функция GETOBJECT( ) активирует объект COM, система Visual FoxPro генерирует сообщение об ошибке при выполнении функции GETOBJECT( ), когда текущий статус рассматриваемой команды SET OLEOBJECT = OFF.