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

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

м Elementary PzlStudio» переименована в «Операционная среда Elementary PzlStudio»: Рарешение конфликта с англоязычным вариантом)
 
(не показано 60 промежуточных версий этого же участника)
Строка 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 приведен ниже.
 
[[Изображение: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, можно откомпилировать проект исполняемого приложения.
 
[[Добавление PzlPort в приложение|Подробности ...]].
 
=Создание 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-Компонента - это пакет системы программирования Visual Prolog. IDE системы Visual Prolog создает пакеты при открытом проекте и помещает такой пакет в этот открытый проект. Elementary PzlStudio не работает с открытыми проектами и, соответственно, содержит лишь элементарную операцию по созданию 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, Вы запускаете компоненту в работу.


Elementary PzlStudio модифицирует проектные файлы в следующих случаях:
Окно сообщений MessageWindow среды Elentary PzlStudio является для всех компонент стандартным потоком вывода, поэтому сообщения компонент, направляемые в стандартный поток вывода будет представлены в окне сообщений (MessageWindow).
*при добавлении Pzl-Системы  в действующее приложение
*при создании контейнера
*при добавлении/удалении компоненты в контейнер


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


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


You start developing new projects from IDE's Project Settings. Here you specify the name for the project and modify some default project parameters like the UI Strategy type. Then you press the OK button and the Project Settings utility generates the default project. Now build this project. Notice that despite this default project does not provide any useful business functionality, it can be built and executed.
Кроме того Elementary PzlStudio позволяет видеть состояние регистра активных экземпляров компонент, если они в нем регистрируются.


After a project is built, the tree of all project files is displayed in the Project window. The project tree displays all files created in the project and standard files used by the project. These are some import libraries, like Vip6init.lib, and some standard packages (the set of used standard packages depends upon the selected UI Strategy type) from Visual Prolog Foundation Classes (PFC).
С этой целью через меню вызывается форма PzlStatus, в которой Вы можете наблюдать динамику появления и исчезновения экземпляра Pzl-Компоненты и состояние регистра активных экземпляров компонент.


The IDE provides Code Experts, resource editors, the text editor, the Code Browser, and other useful tools, which help to develop the project. The resource editors are used to define, layout, and edit windows, forms, dialogs, IDE controls, menus, toolbars, icons, cursors, and bitmaps. From these resources Code Experts generate the necessary Prolog source code framework to present these resources in some presentation space (i.e. in a window). This framework is always ready to be compiled, linked, and run.
[[Контроль состояния Pzl-Системы|Подробности ...]].


At the programmer request, the Code Experts can bring up any part of its generated framework in an editor window for inspection and filling out with application logic to transform the framework into a useful application. Editing the code in the IDE text editor is greatly assisted by several commonly needed functions being available at a click of the right mouse button from a multilevel pop-up menu of editing, selecting, searching, replacing, and inserting functions. Much code can be accurately generated by the insert commands from the Insert submenu. These insert commands permit inserting: predicate templates for predicates from the PFC packages, for user-defined predicates, and for predicates handling created dialogs and windows; domain names; resource identifiers; VPI constants; filenames as obtained by directory browsing; Visual Prolog keywords; colors; and much more.
=Ссылки=
=Ссылки=
[[Категория:VpPuZzle]]
[[Категория:VpPuZzle]]

Текущая версия на 22: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-Компоненты и состояние регистра активных экземпляров компонент.

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

Ссылки