Лабораторная работа №9. Создание динамических библиотек. Цель работы: Освоить создание динамических библиотек. Задания: Создать dll



бет1/4
Дата02.12.2023
өлшемі21,58 Kb.
#131420
түріЛабораторная работа
  1   2   3   4
Байланысты:
Лабораторная работа 9


Лабораторная работа №9.
Создание динамических библиотек. Цель работы: Освоить создание динамических библиотек. Задания:

  1. Создать DLL.

DLL (Dynamic Link Library) - это исполняемый файл, содержащий код и данные, который может быть использован несколькими программами одновременно. Он является разновидностью разделяемой библиотеки в операционных системах Windows.
Главное назначение функции DllMain заключается в инициализации DLL при ее загрузке, а также захвате и освобождении необходимых ресурсов при создании и завершении нового потока в процессе. Эта функция имеет следующий прототип:
BOOL WINAPI DllMain(
HINSTANCE hinstDLL, // дескриптор DLL
DWORD fdwReason, // флаг причины вызова функции DllMain
LPVOID lpvReserved // зарезервировано Windows
2. Написать программу вызова динамической библиотеки, используя явное связывание.
3. Написать программу вызова динамической библиотеки, используя неявное связывание.
4. Написать программу и DLL. Организовать передачу параметров между ними.
5. Написать программу загрузки ресурса из динамической библиотеки. Основная литература: 4 [ 578 - 593] , 5 [ 430 - 457]


Контрольные вопросы:

  1. Виды связывания.

В программировании существует несколько видов связывания, определяющих, когда и как происходит связывание (binding) между именами переменных или функций и их адресами в памяти. Вот основные виды связывания:
Статическое связывание (Static Linking):Компиляция
Когда ты компилируешь свою программу, все функции и переменные в коде получают конкретные адреса в памяти. Эти адреса известны до того, как программа начнет выполняться.
Преимущество: Нет зависимости от внешних файлов, исполняемый файл автономен.
Недостаток: Увеличивает размер исполняемого файла и увеличивает издержки на хранение одной и той же библиотеки в разных приложениях.


Достарыңызбен бөлісу:
  1   2   3   4




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет