Cтраница 1
Редактор библиотеки типов автоматически генерирует GUID для вновь создаваемых интерфейсов. [1]
Редактор библиотеки типов предоставляет разработчику полный набор инструментов, позволяя автоматизировать процесс создания объектов и интерфейсов. Вверху расположена узкая панель инструментов. При помоши кнопок напели можно создавать новые элементы СОМ и выполнять общие для всей библиотеки операции. Панель разделена на четыре части. [2]
Редактор библиотеки типов представляет уточняющие сведения интерфейса. [3] |
Редактор библиотеки типов ( type-library editor) используется для определения в Delphi библиотеки типов. На рис. 12.4 представлено его окно после добавления в него ряда элементов Редактор позволяет добавлять методы и свойства в только что созданный объект автоматизации или в СОМ-объект, созданный ранее с помощью мастера COM Object Wizard. После этого он сгенерирует н библиотеку типов ( TLB-файл) и соответствующий исходный программный код на языке Delphi, сохраняемый в модуле, называемом модулем импорта библиотеки типов. [4]
Редактор библиотеки типов представляет уточняющие сведения интерфейса. [5] |
Для облегчения работы с редактором библиотеки типов Delphi у меня имеется Два предложения. Первое, и наиболее простое щелкните правой кнопкой па панели инструментов и включите параметр Text Labels ( Текстовые надписи); это приведет к появ пению надписей на каждой кнопке панели, что облегчает использование Редактора. [6]
Диалоговое окно New Transactional Object, используемое для создания объекта СОМ. [7] |
При закрытии диалогового окна Delphi добавляет в проект библиотеку типов и модуль реализации, после чего и открывает редактор библиотеки типов, в котором можно определить интерфейс нового СОМ-объекта. В данном примере Добавьте свойство целого типа Value, метод Increase, имеющий в качестве параметра общее число, а также метод AsText, возвращающий WideString с отформатированным значением. [8]
В этом мастере введите имя класса ( без начальной Т, поскольку она будет добавлена автоматически) и щелкните на кнопке ОК Теперь откроется редактор библиотеки типов. [9]
Оми.. 1 редактора кода. [10] |
С геи; с присутствует в файле 1 1 yi я СОМ - с ер в ерй Т LB p i ь, автоматически созданном из редактора библиотеки типов. [11]
Вторичная форма примера ThinPlus, на которой видны данные, полученные в результате выполнения запроса с параметром. [12] |
Так как сервер обладает обычным СОМ-интерфейсом, в его составе могут присутствовать любые методы и свойства, к которым можно обращаться со стороны клиента. Для этого необходимо открыть редактор библиотеки типов сервера и использовать его так, как вы используете его в отношении любого другого сервера. [13]
Обозначение dispinterface является ключевым словом. Dispinterface - автоматически генерируется редактором библиотеки типов для каждого интерфейса. Совместно с dispinterface Delphi использует и другие ключевые слова: dispid - указывает число, ассоциируемое с каждым интерфейсом; readonly и wnteonly - дополнительные спецификаторы свойств. [14]
В ОС Windows приложения существуют не изолированно; пользователи, как правило, желают, чтобы они взаимодействовали. Буфер обмена и DDE предлагают простой способ взаимодействия между приложениями, поскольку с их помощью пользователи могут копировать и вставлять данные. Однако все больше и больше программ предлагают интерфейс автоматизации, позволяющий управлять ими из других программ. Помимо очевидного преимущества программируемой автоматизации по сравнению с ручными операциями пользователя, эти интерфейсы полностью нейтральны по отношению к языку программирования, используемому для их написания. Для реализации в Delphi автоматизация очень проста благодаря интенсивной работе, выполняемой компилятором и VCL, защищающими разработчика от этих сложностей. Для поддержки автоматизации Delphi предоставляет мастер и мощный редактор библиотеки типов, а также поддерживает двойные интерфейсы. При использовании внутрипроцессной DLL клиентское приложение может использовать сервер и непосредственно вызывать его методы, поскольку они находятся в одном адресном пространстве. При использовании автоматизации ситуация более сложная. Клиент ( называемый контроллером) и сервер представляют собой два совершенно разных приложения, выполняемых в различных адресных пространствах. [15]