Описание export делает процедуру или функцию экспортируемой,
вынуждая компилятор использовать для нее дальний тип вызова и ге-
нерировать специальный код входы и выхода из процедуры.
Процедуры и функции должны быть экспортируемыми в следующих
случаях:
* Процедуры и функции экспортируются DLL (динамически компо-
нуемой библиотекой).
* Процедуры и функции системного вызова в программе Windows.
О том, как экспортировать процедуры и функции в DLL, расска-
зывается в Главе 11 "Динамически компонуемые библиотеки". Хотя
процедура и функция компилируется с директивой export, фактичес-
кий экспорт процедуры или функции не происходит, пока подпрограм-
ма не перечисляется в операторе exports библиотеки.
Процедуры и функции системного вызова - это те процедуры и
функции вашей прикладной программы, которые вызываются самой
Windows, а не вашей прикладной программой. Подпрограммы системно-
го вызова должны компилироваться с директивой export, но в опера-
торе exports их перечислять не нужно. Приведем некоторые примеры
процедур и функций системного вызова:
* процедуры Windows;
* диалоговые процедуры;
* процедуры системного вызова для перечисления;
* процедуры уведомления об обращении к памяти;
* специализированные процедуры Windows (фильтры).
Borland Pascal автоматически генерирует для процедур и функ-
ций, экспортируемых программой Windows, эффективные системные вы-
зовы. Эффективные вызовы ослабляют необходимость использования
при создании подпрограмм системного вызова подпрограмм API
Windows MakeProcInstance и FreeProcInstance.
Примечание: См. раздел "Код входа и выхода" в Главе 22.