Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Розробка програми для автоматизації роботи кардіоцентру

Реферат Розробка програми для автоматизації роботи кардіоцентру





викликається метод; при цьому не використовуються регістри процесора для передачі даних. Цим умовам задовольняє директива stdcall. Якщо після заголовка методу відсутня угода про виклик, то за замовчуванням Delphi використовує угоду register. p align="justify"> Друге службове слово в заголовку методу - export - інформує компілятор про те, що код для даного методу має бути створений таким чином, щоб його можна було викликати з інших модулів. Ця директива потрібно при реалізації DLL в Delphi 3; в Delphi 4 і 5 її можна опустити. p align="justify"> Для того щоб зовнішній модуль міг вибрати конкретний метод, в DLL має бути присутня спеціальна секція, яка має заголовок exports.

Для експонування методу в секції exports просто наводиться його назва, після якого слід або службове слово index з цілочисловим ідентифікатором після нього (ідентифікатор повинен бути більше нуля), або службове слово name з текстовим ідентифікатором, або обидва разом . Зовнішній модуль може звертатися до конкретного методу як за індексом, так і по імені. br/>

Статична і динамічна завантаження DLL


Модуль може викликати методи іншого модуля, а той, у свою чергу, - наступного і т.д. Наприклад, додаток викликає DLL, а ця DLL викликає методи інший DLL: так можна формувати довгі ланцюжки викликів. Для виклику методу з іншого модуля необхідно спочатку завантажити його в пам'ять, а потім визначити адресу методу. Існує два способи завантаження і визначення адреси методу - статичний і динамічний. p align="justify"> При статичній завантаженні для виклику іншого модуля слід в якійсь із секцій описати метод з DLL наступним чином:


function Add1 (K: integer): integer; stdcall; external 'FirstLib.dll' name 'CalculateSum';

або

function Add1 (K: integer): integer; stdcall; external 'FirstLib.dll' index 1;


При такому визначенні методу DLL буде завантажена негайно після старту програми та вивантажено разом з його завершенням. У наведеному вище прикладі слід звернути увагу на те, що після імені динамічної бібліотеки вказано її розширення (FirstLib.dll). Така конструкція необхідна для завантаження бібліотеки в Windows NT, оскільки без розширення *. Dll файл не буде знайдений! У Windows 95 розширення не обов'язково. p align="justify"> При пошуку DLL для завантаження спочатку визначається, чи була дана DLL вже завантажена в пам'ять іншим модулем. Якщо була - то витягується адресу методу і передається додатком. Якщо ж ні - то операційна система починає її пошук на диску. При цьому, якщо шлях при імені DLL не зазначений в явному вигляді, система шукає бібліотеку в каталозі модуля, який намагається завантажити DLL. Якщо не знаходить, то продовжує пошуки в директоріях WINDOWS і WINDOWS SYSTEM (або WINNT, WINNT SYSTEM, WINNT SYSTEM32). Після цього відбувається ...


Назад | сторінка 4 з 12 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Застосування графічного методу і симплекс-методу для розв'язання задач ...
  • Реферат на тему: Застосування методу подвійного уподобання і методу потенціалів для вирішенн ...
  • Реферат на тему: Теоретичні основи методу сіток. Побудова конечно-різницевої схеми. Похибк ...
  • Реферат на тему: Поляриметричними метод кількісного визначення: характеристика методу, засто ...
  • Реферат на тему: Специфіка методу анкетування, його застосування в психології