Руководство по языку B.Pascal 7

       

Описания export


Описание export делает процедуру или функцию экспортируемой, вынуждая компилятор использовать для нее дальний тип вызова и ге- нерировать специальный код входы и выхода из процедуры.

Процедуры и функции должны быть экспортируемыми в следующих случаях:

* Процедуры и функции экспортируются DLL (динамически компо- нуемой библиотекой).

* Процедуры и функции системного вызова в программе Windows.

О том, как экспортировать процедуры и функции в DLL, расска- зывается в Главе 11 "Динамически компонуемые библиотеки". Хотя процедура и функция компилируется с директивой export, фактичес- кий экспорт процедуры или функции не происходит, пока подпрограм- ма не перечисляется в операторе exports библиотеки.

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

* процедуры Windows; * диалоговые процедуры; * процедуры системного вызова для перечисления; * процедуры уведомления об обращении к памяти; * специализированные процедуры Windows (фильтры).

Borland Pascal автоматически генерирует для процедур и функ- ций, экспортируемых программой Windows, эффективные системные вы- зовы. Эффективные вызовы ослабляют необходимость использования при создании подпрограмм системного вызова подпрограмм API Windows MakeProcInstance и FreeProcInstance.

Примечание: См. раздел "Код входа и выхода" в Главе 22.



Содержание раздела