Создаём DLL на C++

В предыдущей статье мы создавали DLL, используя Delphi, на языке Pascal. Delphi является коммерческой средой разработки, и стоит огромных денег. Потому мы сегодня поменяем среду разработки и язык программирования, а задача останется прежней.

В качестве среды разработки на C++ я выбрал бесплатно распространяемый Microsoft visual studio community 2015. Не берусь назвать причину этого аттракциона неслыханной щедрости со стороны Microsoft, это тема отдельного исследования :).

Вновь мы напишем две функции, и сделаем так, чтобы одна из них была доступна для внешнего вызова из DLL.

Инициализация нового проекта

Необходимо создать новый проект Visual C++ (меню Файл -> Создать -> Проект), используем шаблон консольного приложения.

dll-visual-c-creation

Выбираем и жмем ОК.

В следующем диалоговом окне устанавливаем параметры приложения как показано на следующем слайде.

aplication-parameters-visiual-c-dll

Думаю, тоже не возникнет вопросов с выбором параметров. Остаётся нажать кнопку — «Готово».

Создание файлов проекта DLL.

Добавим в проект два исходных файла. Один с расширением .cpp будет содержать программный код двух наших тестовых функций, а второй .def будет содержать инструкции для билдера.

Откройте «обозреватель решений» (ох уж мне эти тонкости перевода интерфейса на русский язык :) ). Если он не открыт, то найдите его через меню «Вид» или нажмите комбинацию Ctrl+Alt+L.

Нужно добавить два файла в секцию «Файлы исходного кода».

add-source-file-dll-project

add-cpp-to-project

Сначала добавим файл .cpp, потом .def.

Пишем код DLL

Запрограммируем код наших функций (.cpp)

Для экспортируемой функции нужен префикс, разрешающий экспорт __declspec(dllexport). Функция, используемая только внутри DLL, в таком объявлении не нуждается.

Def файл будет содержать следующие инструкции:

Название библиотеки и перечень экспортируемых функций (у нас только функция для получения куба числа — power3).

Компиляция и сборка библиотеки.

Все готово к компиляции и сборке. В меню «Сборка» выбираем «Собрать решение» CTRL+Shift+B. Если звезды будут вам благоприятствовать, то в папке проекта /debug вы обнаружите файл с расширением .dll.

Написать комментарий

Мало букафф? Читайте есчо !

Чтение параметров командной строки из программы в C++ (Unix, GCC)

Декабрь 19, 2015 г.

UNIX используется чаще всего как операционная система для серверов. Большинство утилит не имеет графического (или псевдографического) интерфейса, вызывается ...

Читать

Friend функция класса выдает ошибку was not declared in this scope

Декабрь 25, 2015 г.

Сегодня долго бился с указанной проблемой при сборке-компиляции проекта на c++ под debian. Решение было в итоге найдено. Для некоторого класса была объявлена friend-функция. Всё объявление класса я приводить не буду, только структуру класса и объявление ...

Читать

 

Комментарии к «Создаём DLL на C++»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: