Динамически присоединяемые библиотеки (DLL, ActiveX DLL) — КиберПедия 

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Динамически присоединяемые библиотеки (DLL, ActiveX DLL)

2022-10-29 23
Динамически присоединяемые библиотеки (DLL, ActiveX DLL) 0.00 из 5.00 0 оценок
Заказать работу

     DLL (Dynamic Linked Library) представляют собой компоненты приложений, объединяющие несколько функций, классов в одном файле, которые динамически вызываются из файла при выполнении приложений. DLL-библиотеки пришли на смену OCX-компонентам.

     Объявление функции из динамических библиотек имеет ряд общих черт, рассмотрим их.

     Выбор области видимости (п. 2.10.2) определяется словами Public (функция открыта для всего приложения) и Private (закрыта, доступна в пределах формы).

     Подключение нужной функции из конкретной DLL-библиотеки реа­ли­зуется командой объявления (п. 2.10.1):

Declare Function <имя функции> Lib <имя DLL-файла> Alias <псевдоним>

     (список параметров) As <тип возвращаемого результата>

Параметры бывают двух типов: не изменяемые функцией (ByVal) и изменяемые ( ByRef ) (п. 2.10.2).

Visual Basic не имеет средств создания DLL‑библиотек с набором функций. Можно создавать только библиотеки ActiveX DLL с классами.

Создание проекта ActiveX DLL:

1. Создается новый проект типа ActiveX DLL и выполняется коман­да Project/Add Module/New/Module для создания модуля.

2. Cоздается процедура Main () (точка входа в библиотеку), опре­де­ляют­ся свойства и методы, формы и объекты.

3. Cвойству класса модуля Instancing задается значение 5-MultiUse.

4. В свойстве проекта укажите Startup Object=Sub Main, введите имя и описание проекта.

5. Выполните команду File/Make <имя проекта>.DLL.

Использование скомпилированных DLL:

1. Инсталляция - копирование DLL и всех необходимых ей ком­по­нен­тов и файлов на компьютер пользователя.

2. Регистрация DLL в системном реестре Windows пользователя прог­раммой Regsvr32.

3. Подключение DLL к проекту через окно References командой Project/References (в списке Available References отметьте флажком нуж­ный ActiveX DLL).

Доступ к классу, определенному в другом компоненте ActiveX, тре­бу­ет уточнения в виде имени проекта (Dim Nahalnik As New SotrDLL.Sotr).

 

 

Функции Windows API

     Функции, которые содержатся в DLL-библиотеках Windows, назы­ва­ют API-функциями. Для просмотра этих функций вызовите из меню Start программу API Text Viewer из программной группы Visual Basic и вы­пол­ните команду File/Load Text File\Win32.api\Open. В API Viewer выполните команду File/Load Text File для загрузки текстового файла в базу данных, что ускоряет работу по поиску (появляется кнопка поиска функции по пер­вым символам в ее наименовании).

Пример. Установите API Type=Declare и найдите функцию sndPlay­Sound (можно ввести первую букву имени функции или воспользоваться кнопкой Search). Нажмите копку Add, а затем Copy для копирования объявления функции в буфер (рис. 14.3.1).

     Создадим новый проект типа Standard EXE, перейдем в секцию (General)(Declaration) формы и нажмем клавиши ^V для вставки из буфера объявления функции sndPlaySound и перед Declare вставим слово Private:

Private Declare Function sndPlaySound Lib ”winmm.dll” Alias ”sndPlaySoundA” _ 

         (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

 

               Рис.14.3.1. Объявление функции sndPlaySound

 

Составим процедуру, выполняемую при загрузке формы:

Private Sub Form_Load()     ‘вывод звукового оформления при загрузке

Dim r As Long                         ‘переменная с результатом работы функции

r=sndPlaySound(”c:\win98\media\tada.wav”,1) ‘проигрывание указанного файла

End Sub       

Создание справочной системы

     Справочная система (справка) вызывается нажатием клавиши F1. Ее создание состоит из нескольких этапов.

     Создание редактором Word файла типа RTF с текстом справки

     Справка делится на разделы. Каждый раздел начинается с новой стра­­ницы (рис. 14.4.1).

Рис. 14.4.1. Исходный текст формируемой справки из двух разделов

 

Перед разделом указывается идентификатор в виде IDH <текст>, а перед ним вставляется символ “ #” в режиме сноски (Вставка/Сноска). После идентификатора раздела указывается его заголо­вок после символа “ $ ” в режиме сноски. При необходимости можно добавить управляющие символы (они описаны в файле HCW. Hlp). Например, введем ключевые слова, отображаемые на странице Указатель, после ввода символа “K” в режиме сноски (рис. 14.4.1). Опреде­лим в справке тексты гиперссылок на другие разделы справки (они выделяются зеленым цветом). Гиперссылка должна выделяться двойным или одинарным под­черкиванием (содер­жи­мое раздела после перехода откры­вается в текущем окне или во всплы­вающей подсказке). Сразу после ги­перссылки без про­белов указывается идентификатор раздела, на который осу­ществляется пе­реход (рис. 14.4.1). Далее выделяем эти идентификато­ры и делаем шрифт скры­тым. Сохра­ним этот файл под именем Helprtf.rtf.

     Создание файла проекта справочной системы

Для создания справочной системы нужно вызвать утилиту Microsoft Help Workshop (файл Hcw. exe). Далее выполним коман­ду File/ New/ Help Project и в окне сохранения файла укажем имя фай­ла проекта с рас­ши­ре­ни­ем.HPJ, например: Help.hpj. В появившемся окне наж­мем кнопку Options и перей­дем на страницу Files окна Options. В поле Help File ука­жем имя будущего файла справки (Help.hlp), в поле RTF Files ‑ имена RTF‑файлов с исход­ными текстами справки (Helprtf.rtf). Закроем окно Options и перей­дем на страницу Map и нажмем кнопку Add. В поле Topic ID укажем иден­тификатор первого раздела (IDH_01), а в поле Mapped numeric value ука­жем его числовой номер (1) и нажмем клавишу OK. Снова нажмем кла­вишу Add для установки соответствия идентифика­тора IDH_02 номеру 2. Сохраним и закроем проект.

     Подготовка содержимого справочной системы

     Выполним команду File/New/Help Contents. В поле Default Filename указывается имя файла типа.HLP, используемого по умолча­нию. В поле Default title задается заголовок первого диалогового окна справки (“Пример спра­воч­ной системы”). Кнопки Add Above / Add Below служат для добавления нового раздела справки выше/ниже текущего раздела. Нажмем кнопку Add Below; появится окно Edit Contents Tab Entry. Установим переключатель Topic (Раздел). Заполним поля:

Title ‑ имя раздела в справке (“Как сформировать расчетную ведомость ”);

Topic ID ‑ идентификатор раздела (“IDH_01”);

Help File ‑ имя файла.HLP справочной системы (“Help.hlp”).

     Процесс добавления раздела должен соответствовать процессу запи­си заголовков (папок), представленных в виде закрытой книги. Эти заголовки разворачиваются по двойному щелчку, показывая вложенный список разделов (до девяти уровней вложенности). Заголовки добавляются при установке переключателя Heading. Нажмем кнопку О K. Нажмем кнопку Add Below для добавления второго раздела. Сохраним файл типа.CNT под именем Help.cnt.

     Создание справочного файла для приложения

     Откроем файл проекта Help.hpj, нажмем кнопку Files в окне Options и в поле Contents file укажем (выберем кнопкой Browse) файл Help.cnt и нажмем кнопку OK. Нажмем кнопку Compile. В окне компиляции установим переключатель Include. rtf filename and topic ID in Help file и нажмем кнопку Compile. Появится результирующий файл Help.hlp. Для проверки работы созданной справочной системы можно нажать кнопку Run WinHelp.

     Корректировка справочного файла

При необходимости можно откорректировать исходный справочный файл.RTF, открыть проект справочной системы и откомпилировать его.

     Присоединение справочного файла к приложению

     Созданный справочный файл (Help.hlp) скопируйте в папку с при­ложе­нием. После загрузки приложения выполните команду Pro­ ject/ Project1 Properties. В поле Help File Name укажите имя справочного файла (Help.hlp). В свойствах HelpContextId (п. 5.1) для соответствующих компо­нен­тов ука­­жи­­­те номера нужных разделов справочного файла (1, 2), вызываемых кла­ви­шей F1 (рис. 14.4.2). Полученный справочный файл можно исполь­зо­вать и в приложениях, разработанных с использованием других языков прог­рам­мирования (Delphi, Builder С++, Visual FoxPro).


Рис. 14.4.2. Окно созданной справочной системы

 

Технология OLE

     Texнология OLE (Object Linking and Embedding) связывания и внедрения объектов позволяет обмениваться данными (текстом, графикой, таблицей) с любой другой программой, поддерживающей эту технологию.

     Пример программы “Художник”. Создадим новый проект типа Standard EXE; перенесем с панели объектов объект OLE; появится окно Insert Object; выберем тип объекта Bitmap Image ‑ точечный рисунок BMP (рис. 14.5.1) и сохраним проект.

     
 

        Рис.14.5.1. Окна проектирования и выполнения проекта

         

Выполните приложение, дважды щелкните по OLE-объекту. Появится меню графического редактора Paint со всеми его возможностями, которыми может пользоваться пользователь этого приложения. Нарисуйте слово Paint (рис. 14.5.1). Таким образом можно встраивать другие объекты и пользоваться возможностями этих объектов.


Поделиться с друзьями:

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.017 с.