OLE VFP
Категория реферата: Рефераты по информатике, программированию
Теги реферата: курсовая работа по организации, вирусы реферат
Добавил(а) на сайт: Jutilov.
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата
. Forms — формы;
. Objects — объекты;
. Controls — элементы управления;
. Pages — страницы;
. Buttons — кнопки;
. Columns — колонки.
При этом обратите внимание, что эти коллекции являются коллекциями
исключительно OLE-объектов и могут использоваться только с объектом
Application. К этим коллекциям нельзя обращаться, используя ассоциированные
переменные с включенными в них объектами. Вы должны использовать свойство
Application, как это показано ниже: oFrm = CREATEOBJECT( 'Form')
? oFrm.Application.Forms[1].Controls.Count
Если вы уже писали программы в Visual FoxPro 3.0, то приведенное выше
утверждение может вызвать некоторое удивление. Перечисленные коллекций были
представлены и в третьей версии, это действительно так. Но, так как Visual
FoxPro 3.0 не мог выполнять функции OLE-сервера, то эти коллекции не
отвечали общепринятым стандартам OLE. В первую очередь за счет того, что их
свойства были доступны для изменения. Это удобно, если мы работаем с одним
приложением. По-прежнему нам никто не мешает продолжать использовать эти
возможности. Но, как только мы начинаем использовать приложение как OLE-
сервер, т. е. обращаемся к нему из другого приложения, то должны
использовать объекты Visual FoxPro как OLE-коллекции.
Например, ничто не мешает нам при создании формы в Visual FoxPro написать такой код:
Frm = CREATEOBJECT ('Form' )
? oFrm.ControlCount &&Число элементов управления в форме
Для OLE-сервера число элементов управления в форме следует определять
так, как это было показано в предыдущем примере, с использованием свойства
Count.
Создание OLE-сервера в Visual FoxPro
Используя Visual FoxPro 5.0, можно создать OLE-сервер, функциональность которого будет использована несколькими приложениями.
Для создания OLE-сервера используемые в нем классы должны быть описаны
как OLE Public, т. е. доступные для OLE Automation. Для этого в команду
DEFINE CLASS включена новая опция OLEPUBLIC. Если класс создается в
Конструкторе классов, необходимо использовать соответствующий независимый
переключать в диалоговом окне Class Info. Отметка класса как OLE Public
позволяет Project Manager при построении приложения создавать и
регистрировать данный класс как ОLЕ-сервер к которому должен получить
доступ OLE-контроллер.
В Visual FoxPro вы можете создать как In-Process сервер (DLL), так и
Out-of-Process сервер (ЕХЕ). Оба типа сервера при работе используют
библиотеку поддержки приложений Visual FoxPro (runtime), однако существенно
отливаются в использовании памяти.
Сервер ЕХЕ запускается в собственном адресном пространстве, и в этом плане его запуск ничем не отличается от запуска копии Visual FoxPro.
Сервер DLL использует адресное пространство того приложения, которое
инициировало его запуск. Поэтому он запускается и работает быстрее.
Естественно стремление использовать в первую очередь именно такой тип
сервера, однако не всегда мы можем так поступить. Сервер DLL не может
использоваться как внешний сервер OLE Automation и, таким образом, должен
находиться на локальном компьютере. Он не поддерживает события, т. е. не
может использоваться для интерактивной работы. Следует также учитывать, что
авария сервера DLL, как правило, влечет аварию управляющей программы.
Сервер ЕХЕ имеет еще одно преимущество. Он может выполнять роль OLE- сервера и обычного приложения Visual FoxPro. Таким образом, если приложение- контроллер использует сервер для выполнения процесса, который может быть весьма ресурсоемким, но выполняется локально на этом сервере, мы получим выигрыш в производительности.
Покажем простейший пример создания OLE-сервера Visual FoxPro. Создадим новый проект Ole_serv, в котором будет один программный файл со следующим кодом:
DEFINE CLASS OLE_SERV AS CUSTOM OLEPUBLIC
PROCEDURE INIT
MESSAGEBOX(PROGRAM(), "РАБОТАЕТ МОЙ ПЕРВЫЙ OLE-SERVER")
ENDDEFINE
Рекомендуем скачать другие рефераты по теме: отчет о прохождении практики, реферат формирование.
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата