Операционная среда Elementary PzlStudio: различия между версиями

Материал из wikiru.visual-prolog.com

м Elementary PzlStudio» переименована в «Операционная среда Elementary PzlStudio»: Рарешение конфликта с англоязычным вариантом)
 
(не показаны 52 промежуточные версии этого же участника)
Строка 1: Строка 1:
Elementary PzlStudio (Среда с простейшим набором функций pzl-технологии) предназначена для упрощения выполнения различного рода операций над pzl-Контейнерами и pzl-Компонентами.
{{copyright}}
{{note|content=
Этот документ ссылается на самостоятельные документы:
*[[Установка Базовых Свойств]]
*[[Добавление PzlPort в приложение]]
*[[Создание Pzl-Контейнера]]
*[[Создание Pzl-Компоненты]]
*[[Добавление/Удаление pzl-Компоненты в Pzl-Контейнер]]
*[[Регистрация компоненты]]
*[[Запуск компоненты]]
*[[Контроль состояния Pzl-Системы]]
}}
 
Elementary PzlStudio (Среда с набором элементарных функций pzl-технологии) предназначена для выполнения различного рода элементарных операций над pzl-Контейнерами и pzl-Компонентами.
Эти средства позволяют включить pzl-Систему в действующее приложение и регистрировать pzl-компоненты.
Эти средства позволяют включить pzl-Систему в действующее приложение и регистрировать pzl-компоненты.


Elementary PzlStudio не является автономным средством и его работа координируется с IDE системы Visual Prolog.  
Elementary PzlStudio не является автономным средством и его работа координируется с IDE системы Visual Prolog.
 
{{ambox|type=content|text=
'''Важно!'''<br/>
#Elementary PzlStudio оперирует только компонентами в виде комбинированных пакетов, представляющих как Оригинальные компоненты, так и Представители (Proxy) pzl-компонент одновременно.
#Elementary PzlStudio модифицирует проектные файлы в следующих случаях:<br/>
##при добавлении Pzl-Системы  в действующее приложение
##при создании контейнера
##при добавлении/удалении компоненты в контейнер
#Перед выполнением операций, перечислынных выше, и после их выполнения рекомендуется провести построение соответствующего проекта средствами IDE.
#При компиляции проекта после добавлении в него любого пакета, класс(ы) которого, предусматривает обращающение к любой Pzl-компоненте, '''необходимо отказаться''' от предложения IDE по включению такой компоненты в данный проект.<br/>'''Включение таких дополнительных Pzl-Компонент следует произвести только с помощью Elementary PzlStudio'''.
#Добавление и удаление компонент из контейнера-проекта связано с координированным внесением изменений в различные составные части проекта. Не рекомендуется выполнение этих операций вручную непосредственно в IDE. Выполнение этих операций вручную средствами IDE возможно, но необходимо знание деталей их скоординированного выполнения.}}
 
=Elementary PzlStudio Overview=
Elementary PzlStudio является приложением, написанным на языке системы программирования Visual Prolog и построенным с использованием Pzl-Технологии.
 
Вызов исполнения операций производится с помощью меню и панели инструментов (Toolbar).
Перечень операций, которые могут быть выполнены с помощью Elementary PzlStudio, с краткими комментариями приведен ниже.
 
Большинство инструментов представлено в Elementary PzlStudio как формы, где устанавливаются свойства и запускается выполнение операций.
 
Окно сообщений (Message Window) является выходным потоком, куда могут посылаться сообщения от инструментов. Окно сообщений может быть закрыто. Повторное открытие окна сообщений производится из меню View/Messages.
 
Как правило, последнее расположение любой формы при ее закрытии сохраняется в реестре Windows.
Там же сохраняются все текущие свойства инструментов Elementary PzlStudio.


Elementary PzlStudio модифицирует проектные файлы в следующих случаях:
Фрагмент состояния Elementary PzlStudio приведен ниже.
*при добавлении Pzl-Системы  в действующее приложение
*при создании контейнера
*при добавлении/удалении компоненты в контейнер
Поэтому перед выполнением этих операций и после их выполнения рекомендуется провести построение соответствующего проекта средствами IDE.


'''''Поскольку добавление и удаление компонент из контейнера-проекта связано с координированным внесением изменений в различные составные части проекта, не рекомендуется выполнение этих операций вручную непосредственно в IDE. Выполнение этих операций вручную средствами IDE возможно, но необходимо знание всех составных частей проекта, где производятся изменения, и деталей их скоординированного выполнения.'''''
[[Изображение:ElementaryPzlStduioOverview.png]]


=Установка базовых свойств Elementary PzlStudio=
=Установка базовых свойств Elementary PzlStudio=
Перед началом работы с Elementary PzlStudio следует назначить основные установки ([[Установка Опций|Установка Опций]]), относящиеся ко всем последующим операциям. Такими установками являются наименование компании, имя автора, место, где будут располагаться компоненты и контейнеры и проч. Если в процессе выполнения операций над контейнерами и компонентами некоторые из этих опций будут изменены, то Elementary PzlStudio спросит сохранить ли эти установки на будущее.
Перед началом работы с Elementary PzlStudio следует назначить основные установки, относящиеся ко всем последующим операциям. Такими установками являются наименование компании, имя автора, место, где будут располагаться компоненты и контейнеры и проч. Если в процессе выполнения операций над контейнерами и компонентами некоторые из этих опций будут изменены, то Elementary PzlStudio спросит сохранить ли эти установки на будущее.


Подробности см. в [[Установка Опций|Установка Опций]].
[[Установка Базовых Свойств|Подробности ...]].


=Включение Pzl-Системы в исполняемое приложение=
=Включение Pzl-Системы в исполняемое приложение=
Строка 24: Строка 57:
Если у Вас уже есть готовое приложение, в которое необходимо добавить pzl-Систему, то следует его предварительно откомпилировать и сохранить (Ctrl-S).
Если у Вас уже есть готовое приложение, в которое необходимо добавить pzl-Систему, то следует его предварительно откомпилировать и сохранить (Ctrl-S).


Имея приложение, которое должно работать с использованием Pzl-Технологии, следует, обратившись к Elementary PzlStudio, выполнить операцию по добавлению pzlPort в это приложение ([[Добавление PzlPort в приложение|Добавление PzlPort в приложение]]). Добавление PzlPort в приложение полностью обеспечивает включение всех необходимых средств pzl-Системы в проект исполняемого приложения.
Имея приложение, которое должно работать с использованием Pzl-Технологии, следует, обратившись к Elementary PzlStudio, выполнить операцию по добавлению pzlPort в это приложение. Добавление PzlPort в приложение полностью обеспечивает включение всех необходимых средств pzl-Системы в проект исполняемого приложения.


Возвратившись теперь к IDE, можно, пользуясь текстовым редактором IDE, добавить процедуры инициализации pzlPort и откомпилировать проект исполняемого приложения.
Возвратившись теперь к IDE, можно откомпилировать проект исполняемого приложения.


Подробности см. в [[Добавление PzlPort в приложение|Добавление PzlPort в приложение]].
[[Добавление PzlPort в приложение|Подробности ...]].


=Создание Pzl-Контейнера=
=Создание Pzl-Контейнера=
Подробности см. в [[Создание Pzl-Контейнера|Создание Pzl-Контейнера]].
Pzl-Контейнер - это место хранения Pzl-Компонент. В этом смысле как основное исполняемое  приложение, так и DLL могут являться Pzl-Контейнерами.
 
Pzl-Технология предусматривает, что основное исполняемое приложение приобретает свойства Pzl-Контейнера вместе с наделением его свойствами Pzl-Порта. Следовательно, выполнив операцию добавления PzlPort к основному исполняемому приложению, мы, тем самым, создаем и Pzl-Контейнер исполняемого приложения.
 
Поэтому Elementary PzlStudio не содержит операций по созданию pzl-Контейнера в главном исполняемом приложении. А операция создания pzl-Контейнера в Elementary PzlStudio означает создание DLL, которая является pzl-Контейнером.
 
Проект, который соответствует Dll-контейнеру может быть создан и вручную с помощью IDE, но делать это не рекомендуется, поскольку это требует знания ряда деталей структуры проекта pzl-Контейнера. Вместо этого Elementary PzlStudio предлагает весьма простую операцию создания такого проекта.
 
Вызвав эту операцию, следует заполнить форму с основными свойствами pzl-Контейнера, и одним нажатием на кнопку Вы получаете готовый Pzl-Контейнер. Этот контейнер затем следует открыть с помощью IDE и запустить его построение.
 
[[Создание Pzl-Контейнера|Подробности ...]].
 
=Создание Pzl-Компоненты=
=Создание Pzl-Компоненты=
Подробности см. в [[Создание Pzl-Компоненты|Создание Pzl-Компоненты]].
 
=Добавление pzl-Компоненты в Pzl-Контейнер=
Pzl-Компонента - это пакет системы программирования Visual Prolog. IDE системы Visual Prolog создает пакеты при открытом проекте и помещает такой пакет в этот открытый проект. Elementary PzlStudio не работает с открытыми проектами и, соответственно, содержит лишь элементарную операцию по созданию pzl-компоненты, как пакета, независомо от проекта. Этот пакет далее может быть помещен в любой pzl-контейнер.
Подробности см. в [[Добавление pzl-Компоненты в Pzl-Контейнер|Добавление pzl-Компоненты в Pzl-Контейнер]].
 
=Пробный запуск компоненты=
При создании pzl-Компоненты заполняется форма, содержащая такие параметры pzl-Компоненты, как идентификатор, условное наименование, способность к автономному запуску, имя базового класса и имя базового интерфейса, место размещения в дисковом пространстве.
Подробности см. в [[Пробный запуск компоненты|Пробный запуск компоненты]].
 
Заполнив эти данные и нажав кнопку, Вы получаете готовую Pzl-Компоненту, которая теперь может быть включена в любой из pzl-контейнеров (в составе исполняемого приложения или в DLL).
 
[[Создание Pzl-Компоненты|Подробности ...]].
 
=Добавление Pzl-Компоненты в Pzl-Контейнер=
 
Добавление pzl-Компоненты в Pzl-Контейнер рекомендуется осуществлять с помощью Elementary PzlStudio. Выполнение такой операции вручную с использованием IDE может привести к рассогласованию необходимых связей.
 
Не имеет значения, является ли pzl-Контейнер пустым или в нем уже содержатся другие Pzl-Компоненты. Главное - добавляемая компонента до этого не должна содержаться в данном контейнере.
 
Pzl-контейнером может быть как главное приложение, так и DLL-контейнер. Для добавления Pzl-Контейнера в специальной форме Вы выбираете проект контейнера. Если это главное исполняемое приложение, то в него предварительно  должен быть добавлен PzlPort. Если это DLL - то это должен быть именно Pzl-контейнер на основе DLL.
 
Далее Вы выбираете пакет, содержащий Pzl-Компоненту, и можете Выбрать один из способов добавления pzl-компоненты: pzl-Компонента добавляется либо как оригинальная компонента, либо как представитель pzl-Компоненты (proxy).
 
Если компонента добавляется как оригинальная компонента, то все другие классы могут ее использовать, создавая ее экземпляры и выполняя все, предусмотренные ее интерфейсами, действия.  
 
Если Вы добавляете в данный контейнер представителя Pzl-Компоненты, то это означает, что эта pzl-Компонента находится в каком-либо контейнере (Вы можете не знать, где именно), а все классы данного контейнера взаимодействуют с ней через ее представителя, находящегося в данном контейнере.
 
[[Добавление/Удаление pzl-Компоненты в Pzl-Контейнер|Подробности ...]].
 
=Удаление Pzl-Компоненты из Pzl-Контейнера=
 
Удаление pzl-Компоненты из Pzl-Контейнера рекомендуется осуществлять с помощью Elementary PzlStudio. Выполнение такой операции вручную с использованием IDE может привести к рассогласованию необходимых связей.
 
Pzl-контейнером может быть как главное приложение, так и DLL-контейнер. Для удаления Pzl-Компоненты в специальной форме Вы выбираете проект контейнера (либо PzlPort, либо DLL-контейнер), содержащий эту pzl-Компоненту.
 
Далее Вы выбираете имя пакета Pzl-Компоненты, который должен быть удален.
Нажав кнопку, Вы удаляете компоненту с заданным именем пакета, независимо от того, оригинальная компонента удаляется или ее представитель (proxy).
 
[[Добавление/Удаление pzl-Компоненты в Pzl-Контейнер|Подробности ...]].
 
=Изменение статуса Pzl-Компоненты в Pzl-Контейнере=
 
Как уже упоминалось, Pzl-Компонента может присутствовать в Pzl-Контейнере либо непосредственно, либо она представлена в контейнере своим представителем.
 
Пользуясь Elementary PzlStudio, Вы можете изменить статус pzl-Компоненты с оригинального на Proxy и обратно.
 
Для изменения статуса Pzl-Компоненты в форме Вы выбираете проект контейнера (либо PzlPort, либо DLL-контейнер), содержащий эту pzl-Компоненту.
 
Далее Вы выбираете имя пакета Pzl-Компоненты, статус который должен быть изменен.
Нажав кнопку, Вы изменяете статус Pzl-Компоненты.
 
[[Добавление/Удаление pzl-Компоненты в Pzl-Контейнер|Подробности ...]].
 
=Регистрация компоненты=
=Регистрация компоненты=
Подробности см. в [[Регистрация компоненты|Регистрация компоненты]].
 
Pzl-Компоненты видны из различных частей приложения, в том числе из Pzl-Контейнеров, если эти Pzl-Компоненты зарегистрированы на данном компьютере.
 
Каждая компонента должна быть зарегистрирована по крайней мере в одном из следующих реестров:
*в локальном файле пользователя
*в реестре LocalUser системы Windows (имя раздела HKEY_CURRENT_USER)
*в реестре LocalMashine системы Windows (имя раздела HKEY_LOCAL_MACHINE)
*в главном исполняемом приложении
 
'''Pzl-компоненты, содержащиеся в главных исполняемых приложениях, не регистрируются''', но доступны для использования из DLL-контейнеров, вызванных с помощью данного Pzl-Порта.
 
Если компонента зарегистрирована более, чем в одном месте, то актуальным местом ее регистрации считается ближайшее место в указанном списке, двигаясь сверху вниз.
 
То есть, например, если pzl-Компонента зарегистрирована в локальном файле пользователя и в реестре HKEY_CURRENT_USER одновременно, то действительным местом регистрации будет считаться локальный файл пользователя.
 
Elementary PzlStudio предоставляет возможность:
*регистрации Pzl-Компонент в любом из выбранных мест
*снятия с регистрации компонент выбранного pzl-Контейнера
*просмотра списка pzl-компонент, данного Pzl-Контейнера
*проверки факта регистрации заданной pzl-компоненты в заданном месте
*просмотра списка компонент, зарегистрированных в данном месте регистрации
 
Варьируя выбором pzl-Контейнера и места регистрации можно получить полную картину состояния регистрации pzl-контейнеров и pzl-компонент на данном компьютере.
 
Однако, с помощью этого средства невозможно получить список pzl-компонент, содержащихся в главных исполняемых приложениях, поскольку pzl-компоненты, содержащиеся в них, не регистрируются, но доступны.
 
[[Регистрация компоненты|Подробности ...]].
 
=Запуск компоненты=
Elementary PzlStudio позволяет запускать в работу pzl-Компоненты, хранящиеся на Вашей машине.
Для того, чтобы это сделать:
*Компонента должна быть создана с добавлением интерфейса SpbRun, то есть при ее создании должна быть установлена опция RunAble=true
*Исполнение предиката spbRun интерфейса spbRun компоненты должно приводить к появлению на экране средств взаимодействия с пользователем
*Компонента должна быть включена в какой-либо контейнер (в принципе, в любой), уровень лицензии которого не выше уровня лицензии Elementary SpbStudio и этот контейнер должен быть откомпилирован (построен)
*Компонента должна быть зарегистрирована в любом из доступных мест регистрации
 
Вызвав из меню Tools/RunComponent Вы получаете древовидную структуру узлами которой являются имена логических или физических директорий, а листьями - имена (соответствующие Условным именам) компонент.
 
Для каждой компоненты можно задать входной параметр в текстовой форме, который будет передан компоненте в виде текстового параметра предиката spbRun
 
Кликнув дважды на имени компоненты или нажав кнопку Ok, Вы запускаете компоненту в работу.
 
Окно сообщений MessageWindow среды Elentary PzlStudio является для всех компонент стандартным потоком вывода, поэтому сообщения компонент, направляемые в стандартный поток вывода будет представлены в окне сообщений (MessageWindow).
 
[[Запуск компоненты|Подробности ...]].
 
=Контроль состояния Pzl-Системы=
=Контроль состояния Pzl-Системы=
Подробности см. в [[Контроль состояния Pzl-Системы|Контроль состояния Pzl-Системы]].
Запуская компоненты в работу с использванием Elementary PzlStudio, Вы можете видеть как экземпляр pzl-Компоненты влияет на состоянеие активности соответствующего Pzl-Контейнера.
В частности Вы можете наблюдать, как он реагирует на поведение сборщика мусора.
 
Кроме того Elementary PzlStudio позволяет видеть состояние регистра активных экземпляров компонент, если они в нем регистрируются.
 
С этой целью через меню вызывается форма PzlStatus, в которой Вы можете наблюдать динамику появления и исчезновения экземпляра Pzl-Компоненты и состояние регистра активных экземпляров компонент.
 
[[Контроль состояния Pzl-Системы|Подробности ...]].


=Ссылки=
=Ссылки=
[[Категория:VpPuZzle]]
[[Категория:VpPuZzle]]

Текущая версия на 21:14, 31 января 2008

Автор: Виктор Юхтенко

Elementary PzlStudio (Среда с набором элементарных функций pzl-технологии) предназначена для выполнения различного рода элементарных операций над pzl-Контейнерами и pzl-Компонентами. Эти средства позволяют включить pzl-Систему в действующее приложение и регистрировать pzl-компоненты.

Elementary PzlStudio не является автономным средством и его работа координируется с IDE системы Visual Prolog.

Emblem-important.png

Важно!
  1. Elementary PzlStudio оперирует только компонентами в виде комбинированных пакетов, представляющих как Оригинальные компоненты, так и Представители (Proxy) pzl-компонент одновременно.
  2. Elementary PzlStudio модифицирует проектные файлы в следующих случаях:
    1. при добавлении Pzl-Системы в действующее приложение
    2. при создании контейнера
    3. при добавлении/удалении компоненты в контейнер
  3. Перед выполнением операций, перечислынных выше, и после их выполнения рекомендуется провести построение соответствующего проекта средствами IDE.
  4. При компиляции проекта после добавлении в него любого пакета, класс(ы) которого, предусматривает обращающение к любой Pzl-компоненте, необходимо отказаться от предложения IDE по включению такой компоненты в данный проект.
    Включение таких дополнительных Pzl-Компонент следует произвести только с помощью Elementary PzlStudio.
  5. Добавление и удаление компонент из контейнера-проекта связано с координированным внесением изменений в различные составные части проекта. Не рекомендуется выполнение этих операций вручную непосредственно в IDE. Выполнение этих операций вручную средствами IDE возможно, но необходимо знание деталей их скоординированного выполнения.

Elementary PzlStudio Overview

Elementary PzlStudio является приложением, написанным на языке системы программирования Visual Prolog и построенным с использованием Pzl-Технологии.

Вызов исполнения операций производится с помощью меню и панели инструментов (Toolbar). Перечень операций, которые могут быть выполнены с помощью Elementary PzlStudio, с краткими комментариями приведен ниже.

Большинство инструментов представлено в Elementary PzlStudio как формы, где устанавливаются свойства и запускается выполнение операций.

Окно сообщений (Message Window) является выходным потоком, куда могут посылаться сообщения от инструментов. Окно сообщений может быть закрыто. Повторное открытие окна сообщений производится из меню View/Messages.

Как правило, последнее расположение любой формы при ее закрытии сохраняется в реестре Windows. Там же сохраняются все текущие свойства инструментов Elementary PzlStudio.

Фрагмент состояния Elementary PzlStudio приведен ниже.

ElementaryPzlStduioOverview.png

Установка базовых свойств Elementary PzlStudio

Перед началом работы с Elementary PzlStudio следует назначить основные установки, относящиеся ко всем последующим операциям. Такими установками являются наименование компании, имя автора, место, где будут располагаться компоненты и контейнеры и проч. Если в процессе выполнения операций над контейнерами и компонентами некоторые из этих опций будут изменены, то Elementary PzlStudio спросит сохранить ли эти установки на будущее.

Подробности ....

Включение Pzl-Системы в исполняемое приложение

Elementary PzlStudio не предусматривает операции по созданию новых проектов исполняемых приложений со встроенными средствами pzl-Системы. Однако Elementary PzlStudio позволяет любое приложение дополнить средствами pzl-Системы - добавить PzlPort.

Поэтому для создания приложения, использующего pzl-технологию, необходимо сначала средствами IDE создать приложение с необходимыми свойствами, откомпилировать его и сохранить (Ctrl-S).

Если у Вас уже есть готовое приложение, в которое необходимо добавить pzl-Систему, то следует его предварительно откомпилировать и сохранить (Ctrl-S).

Имея приложение, которое должно работать с использованием Pzl-Технологии, следует, обратившись к Elementary PzlStudio, выполнить операцию по добавлению pzlPort в это приложение. Добавление PzlPort в приложение полностью обеспечивает включение всех необходимых средств pzl-Системы в проект исполняемого приложения.

Возвратившись теперь к IDE, можно откомпилировать проект исполняемого приложения.

Подробности ....

Создание Pzl-Контейнера

Pzl-Контейнер - это место хранения Pzl-Компонент. В этом смысле как основное исполняемое приложение, так и DLL могут являться Pzl-Контейнерами.

Pzl-Технология предусматривает, что основное исполняемое приложение приобретает свойства Pzl-Контейнера вместе с наделением его свойствами Pzl-Порта. Следовательно, выполнив операцию добавления PzlPort к основному исполняемому приложению, мы, тем самым, создаем и Pzl-Контейнер исполняемого приложения.

Поэтому Elementary PzlStudio не содержит операций по созданию pzl-Контейнера в главном исполняемом приложении. А операция создания pzl-Контейнера в Elementary PzlStudio означает создание DLL, которая является pzl-Контейнером.

Проект, который соответствует Dll-контейнеру может быть создан и вручную с помощью IDE, но делать это не рекомендуется, поскольку это требует знания ряда деталей структуры проекта pzl-Контейнера. Вместо этого Elementary PzlStudio предлагает весьма простую операцию создания такого проекта.

Вызвав эту операцию, следует заполнить форму с основными свойствами pzl-Контейнера, и одним нажатием на кнопку Вы получаете готовый Pzl-Контейнер. Этот контейнер затем следует открыть с помощью IDE и запустить его построение.

Подробности ....

Создание Pzl-Компоненты

Pzl-Компонента - это пакет системы программирования Visual Prolog. IDE системы Visual Prolog создает пакеты при открытом проекте и помещает такой пакет в этот открытый проект. Elementary PzlStudio не работает с открытыми проектами и, соответственно, содержит лишь элементарную операцию по созданию pzl-компоненты, как пакета, независомо от проекта. Этот пакет далее может быть помещен в любой pzl-контейнер.

При создании pzl-Компоненты заполняется форма, содержащая такие параметры pzl-Компоненты, как идентификатор, условное наименование, способность к автономному запуску, имя базового класса и имя базового интерфейса, место размещения в дисковом пространстве.

Заполнив эти данные и нажав кнопку, Вы получаете готовую Pzl-Компоненту, которая теперь может быть включена в любой из pzl-контейнеров (в составе исполняемого приложения или в DLL).

Подробности ....

Добавление Pzl-Компоненты в Pzl-Контейнер

Добавление pzl-Компоненты в Pzl-Контейнер рекомендуется осуществлять с помощью Elementary PzlStudio. Выполнение такой операции вручную с использованием IDE может привести к рассогласованию необходимых связей.

Не имеет значения, является ли pzl-Контейнер пустым или в нем уже содержатся другие Pzl-Компоненты. Главное - добавляемая компонента до этого не должна содержаться в данном контейнере.

Pzl-контейнером может быть как главное приложение, так и DLL-контейнер. Для добавления Pzl-Контейнера в специальной форме Вы выбираете проект контейнера. Если это главное исполняемое приложение, то в него предварительно должен быть добавлен PzlPort. Если это DLL - то это должен быть именно Pzl-контейнер на основе DLL.

Далее Вы выбираете пакет, содержащий Pzl-Компоненту, и можете Выбрать один из способов добавления pzl-компоненты: pzl-Компонента добавляется либо как оригинальная компонента, либо как представитель pzl-Компоненты (proxy).

Если компонента добавляется как оригинальная компонента, то все другие классы могут ее использовать, создавая ее экземпляры и выполняя все, предусмотренные ее интерфейсами, действия.

Если Вы добавляете в данный контейнер представителя Pzl-Компоненты, то это означает, что эта pzl-Компонента находится в каком-либо контейнере (Вы можете не знать, где именно), а все классы данного контейнера взаимодействуют с ней через ее представителя, находящегося в данном контейнере.

Подробности ....

Удаление Pzl-Компоненты из Pzl-Контейнера

Удаление pzl-Компоненты из Pzl-Контейнера рекомендуется осуществлять с помощью Elementary PzlStudio. Выполнение такой операции вручную с использованием IDE может привести к рассогласованию необходимых связей.

Pzl-контейнером может быть как главное приложение, так и DLL-контейнер. Для удаления Pzl-Компоненты в специальной форме Вы выбираете проект контейнера (либо PzlPort, либо DLL-контейнер), содержащий эту pzl-Компоненту.

Далее Вы выбираете имя пакета Pzl-Компоненты, который должен быть удален. Нажав кнопку, Вы удаляете компоненту с заданным именем пакета, независимо от того, оригинальная компонента удаляется или ее представитель (proxy).

Подробности ....

Изменение статуса Pzl-Компоненты в Pzl-Контейнере

Как уже упоминалось, Pzl-Компонента может присутствовать в Pzl-Контейнере либо непосредственно, либо она представлена в контейнере своим представителем.

Пользуясь Elementary PzlStudio, Вы можете изменить статус pzl-Компоненты с оригинального на Proxy и обратно.

Для изменения статуса Pzl-Компоненты в форме Вы выбираете проект контейнера (либо PzlPort, либо DLL-контейнер), содержащий эту pzl-Компоненту.

Далее Вы выбираете имя пакета Pzl-Компоненты, статус который должен быть изменен. Нажав кнопку, Вы изменяете статус Pzl-Компоненты.

Подробности ....

Регистрация компоненты

Pzl-Компоненты видны из различных частей приложения, в том числе из Pzl-Контейнеров, если эти Pzl-Компоненты зарегистрированы на данном компьютере.

Каждая компонента должна быть зарегистрирована по крайней мере в одном из следующих реестров:

  • в локальном файле пользователя
  • в реестре LocalUser системы Windows (имя раздела HKEY_CURRENT_USER)
  • в реестре LocalMashine системы Windows (имя раздела HKEY_LOCAL_MACHINE)
  • в главном исполняемом приложении

Pzl-компоненты, содержащиеся в главных исполняемых приложениях, не регистрируются, но доступны для использования из DLL-контейнеров, вызванных с помощью данного Pzl-Порта.

Если компонента зарегистрирована более, чем в одном месте, то актуальным местом ее регистрации считается ближайшее место в указанном списке, двигаясь сверху вниз.

То есть, например, если pzl-Компонента зарегистрирована в локальном файле пользователя и в реестре HKEY_CURRENT_USER одновременно, то действительным местом регистрации будет считаться локальный файл пользователя.

Elementary PzlStudio предоставляет возможность:

  • регистрации Pzl-Компонент в любом из выбранных мест
  • снятия с регистрации компонент выбранного pzl-Контейнера
  • просмотра списка pzl-компонент, данного Pzl-Контейнера
  • проверки факта регистрации заданной pzl-компоненты в заданном месте
  • просмотра списка компонент, зарегистрированных в данном месте регистрации

Варьируя выбором pzl-Контейнера и места регистрации можно получить полную картину состояния регистрации pzl-контейнеров и pzl-компонент на данном компьютере.

Однако, с помощью этого средства невозможно получить список pzl-компонент, содержащихся в главных исполняемых приложениях, поскольку pzl-компоненты, содержащиеся в них, не регистрируются, но доступны.

Подробности ....

Запуск компоненты

Elementary PzlStudio позволяет запускать в работу pzl-Компоненты, хранящиеся на Вашей машине. Для того, чтобы это сделать:

  • Компонента должна быть создана с добавлением интерфейса SpbRun, то есть при ее создании должна быть установлена опция RunAble=true
  • Исполнение предиката spbRun интерфейса spbRun компоненты должно приводить к появлению на экране средств взаимодействия с пользователем
  • Компонента должна быть включена в какой-либо контейнер (в принципе, в любой), уровень лицензии которого не выше уровня лицензии Elementary SpbStudio и этот контейнер должен быть откомпилирован (построен)
  • Компонента должна быть зарегистрирована в любом из доступных мест регистрации

Вызвав из меню Tools/RunComponent Вы получаете древовидную структуру узлами которой являются имена логических или физических директорий, а листьями - имена (соответствующие Условным именам) компонент.

Для каждой компоненты можно задать входной параметр в текстовой форме, который будет передан компоненте в виде текстового параметра предиката spbRun

Кликнув дважды на имени компоненты или нажав кнопку Ok, Вы запускаете компоненту в работу.

Окно сообщений MessageWindow среды Elentary PzlStudio является для всех компонент стандартным потоком вывода, поэтому сообщения компонент, направляемые в стандартный поток вывода будет представлены в окне сообщений (MessageWindow).

Подробности ....

Контроль состояния Pzl-Системы

Запуская компоненты в работу с использванием Elementary PzlStudio, Вы можете видеть как экземпляр pzl-Компоненты влияет на состоянеие активности соответствующего Pzl-Контейнера. В частности Вы можете наблюдать, как он реагирует на поведение сборщика мусора.

Кроме того Elementary PzlStudio позволяет видеть состояние регистра активных экземпляров компонент, если они в нем регистрируются.

С этой целью через меню вызывается форма PzlStatus, в которой Вы можете наблюдать динамику появления и исчезновения экземпляра Pzl-Компоненты и состояние регистра активных экземпляров компонент.

Подробности ....

Ссылки