Лекция: Области применения DLL

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

  • Отдельные библиотеки, содержащие полезные для программистов дополнительные функции. Например, функции для работы со строками, или же — сложные библиотеки для преобразования изображений.
  • Хранилища ресурсов. В DLL можно хранить не только программы и функции, но и всевозможные ресурсы — иконки, рисунки, строковые массивы, меню, и т.д.
  • Библиотеки поддержки. В качестве примера можно привести библиотеки таких известных пакетов, как: DirectX, ICQAPI (API для ICQ), OpenGL и т.д.
  • Части программы. Например, в DLL можно хранить окна программы (формы), и т.п.
  • Плагины (Plugins). — Вот где настоящий простор для мыслей программиста! Плагины — дополнения к программе, расширяющие ее возможности. Например, в этой статье мы рассмотрим теорию создания плагина для собственной программы.
  • Разделяемый ресурс. DLL (Dynamic Link Library) может быть использована сразу несколькими программами или процессами (т.н. sharing — разделяемый ресурс)

В DLL можно размещать не только функции, но и курсоры, рисунки, иконки, меню, текстовые строки. Для этого нужно создать новую DLL и добавить в нее новую форму (File -> New -> DLL, а затем — File -> New Form). Далее, если форма представляет собой диалоговое окно (модальную форму (bsDialog)), то добавляем в DLL следующую функцию (допустим, форма называется Form1, а ее класс — TForm1):

 

(Пример кода демонстрирующий подключение DLL. Во время ответа скорее всего не понадобится)

Привязка DLL к программе
{… Здесь идет заголовок файла и определение формы TForm1 и ее экземпляра Form1} implementation {Определяем внешнюю библиотечную функцию} function GetSimpleText(LangRus: Boolean): PChar; stdcall; external 'MYDLL.DLL'; procedure Button1Click(Sender: TObject); begin {И используем ее} ShowMessage(StrPas(GetSimpleText(True))); ShowMessage(StrPas(GetSimpleText(False))); {ShowMessage — показывает диалоговое окно с указанной надписью; StrPas — преобразует строку PChar в string} end;

Более подробно с кодом можно почитать тут cheaton.ru/f30/sozdanie-dll-216/

еще рефераты
Еще работы по информатике