Экспорт из библиотеки DLL
Структура файла библиотеки DLL очень похожа на структуру EXE-файла с одним важным отличием: файл библиотеки DLL содержит таблицу экспорта.Таблица экспорта содержит имя каждой функции, которую библиотека DLL экспортирует в другие исполняемые файлы.Эти функции являются точками входа в библиотеку DLL. Другим исполняемым файлам доступны только те функции, которые представлены в таблице экспорта.Все остальные функции принадлежат только самой библиотеке DLL.Таблицу экспорта библиотеки DLL можно просмотреть с помощью утилиты DUMPBIN с параметром /EXPORTS.
Существует два метода экспорта функций из библиотеки DLL:
Создать файл определения модуля (DEF-файл) и использовать данный файл при построении библиотеки DLL.Данный метод необходимо использовать в случае, когда требуется экспортировать функции из библиотеки DLL по порядковому номеру, а не по имени.
Использовать ключевое слово __declspec(dllexport) в определении функции.
При использовании для экспорта функции другого метода, убедитесь в том, что используется соглашение о вызове __stdcall.
Выполняемые задачи
Экспорт из библиотеки DLL с использованием __declspec(dllexport)
Экспорт функций C++ для использования в исполняемых файлах, исходный код которых написан на языке C
Экспорт функции из библиотеки DLL по порядковому номеру, а не по имени