wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Windows C++ Dll

Total questions: 37

Worksheet time: 19mins

Name
Class
Date
1.

Що таке DLL у Windows?

a)

Драйвер пристрою

b)

Динамічно підключувана бібліотека

c)

Статична бібліотека

d)

Сервіс Windows

2.

Який файл генерується при створенні DLL у C++?

a)

*.lib

b)

*.exe

c)

*.dll

d)

*.obj

3.

Яке ключове слово використовується для експорту функцій DLL у MSVC?

a)

static

b)

extern

c)

__declspec(dllexport)

d)

public

4.

Який макрос дозволяє імпортувати функцію з DLL?

a)

__global__

b)

__declspec(dllexport)

c)

__declspec(dllimport)

d)

EXPORT_DLL

5.

Який механізм Windows дозволяє завантажити DLL під час виконання?

a)

OpenProcess

b)

LoadLibrary

c)

CreateFile

d)

RunDLL32

6.

Яка функція використовується для отримання адреси експортованої функції?

a)

GetModuleHandle

b)

GetProcAddress

c)

GetModuleFileName

d)

GetSystemDirectory

7.

Якою функцією отримують адресу експортованої процедури з DLL?

a)

FindProcAddress

b)

GetProcAddress

c)

GetFunction

8.

Який тип значення повертає LoadLibrary?

a)

FILE*

b)

HANDLE

c)

HMODULE

d)

DWORD

9.

Що станеться, якщо DLL не знайдена?

a)

Програма продовжить роботу

b)

LoadLibrary поверне NULL

c)

Виняток буде зловлений автоматично

d)

Буде викликано abort()

10.

Як називається точка входу DLL?

a)

main()

b)

WinMain()

c)

DllMain()

d)

DllEntry()

11.

Що означає подія DLL_PROCESS_ATTACH?

a)

Потік завершився

b)

Процес підключається до DLL

c)

Потік підключається

d)

DLL віддаляється з пам’яті

12.

Що означає DLL_THREAD_ATTACH?

a)

DLL завантажена

b)

Створено новий потік

c)

Потік завершено

13.

Який файл генерується для статичних посилань на DLL?

a)

*.exe

b)

*.pdb

c)

*.lib

d)

*.ini

14.

Для чого потрібен імпортний .lib файл?

a)

Для запуску DLL

b)

Для компіляції та лінкування

c)

Для видалення DLL

d)

Для налагодження коду

15.

Як заборонити зміну імені функції?

a)

Використати inline

b)

Писати ім’я великими літерами

c)

Використати extern "C"

d)

Перейменувати проект

16.

Який формат експорту дозволяє вручну задавати імена та ординали?

a)

*.ini

b)

*.def

c)

*.cfg

d)

*.txt

17.

Який розділ у DEF-файлі містить список функцій?

a)

IMPORTS

b)

RESOURCES

c)

EXPORTS

d)

LIBRARIES

18.

Яка директива MSVC дозволяє експортувати всі символи класу?

a)

@export_all

b)

__class_export__

c)

__declspec(dllexport)

d)

EXPORT_CLASS

19.

Що буде, якщо не експортувати конструктор класу?

a)

Клас працюватиме одразу

b)

Користувач DLL не зможе створити об'єкт

c)

DLL не згенерується

d)

Буде помилка компоновки

20.

Як оголосити функцію, що імпортується?

a)

static __declspec(import)

b)

__declspec(dllimport)

c)

__import__

d)

extern static

21.

Який тип бібліотеки лінкується на етапі виконання?

a)

DLL

b)

LIB

c)

EXE

d)

OBJ

22.

Яка функція видаляє DLL з пам’яті?

a)

UnloadLibrary

b)

FreeLibrary

c)

DeleteModule

d)

FreeModule

23.

Який параметр повертає GetProcAddress?

a)

FILE*

b)

FARPROC

c)

void*

d)

HMODULE

24.

Який тип потрібно використовувати після отримання адреси функції?

a)

typedef для функції

b)

float

c)

class*

d)

HANDLE

25.

Який тип DLL найчастіше використовують у Windows?

a)

Shared DLL

b)

Static DLL

c)

Global DLL

d)

Inline DLL

26.

Що таке ordinal?

a)

Помилка системи

b)

Числовий індекс експортованої функції

c)

Тип компіляції

d)

Клас DLL

27.

Яка функція завантажує DLL тільки з повним шляхом?

a)

LoadLibraryEx

b)

LoadDll

c)

DLLLoadEx

d)

LoadComplete

28.

Яке обмеження DLL неправильно?

a)

DLL має мати точку входу

b)

DLL не може містити статичних змінних

c)

DLL може експортувати класи

29.

Що робить `__stdcall` у DLL?

a)

Забороняє виклик функції

b)

Визначає тип виклику функції

c)

Генерує новий DLL

d)

Відміняє імпорт

30.

Яка угода виклику використовується за замовчуванням?

a)

`__stdcall`

b)

`__fastcall`

c)

`__cdecl`

d)

`__native`

31.

Чи може DLL містити глобальні змінні?

a)

Ні

b)

Так

c)

Тільки у *.def

d)

Тільки у статичній бібліотеці

32.

Чи можна викликати GUI-функції всередині DLL?

a)

Ні

b)

Так

c)

Тільки у Win

d)

Тільки у x64

33.

Створення DLL у Visual Studio починається з...

a)

Видалення проєкту

b)

Створення нового проєкту DLL

c)

Додавання *.sys

d)

Встановлення драйверів

34.

Чи можна завантажити DLL з мережевої теки?

a)

Ні

b)

Так

c)

Тільки через ftp

d)

Тільки через HTTPS

35.

Чи може DLL бути 64-бітною для 32-бітного EXE?

a)

Так

b)

Ні

c)

Тільки на Windows

d)

Можна, якщо увімкнути compat mode

36.

Який WinAPI дозволяє отримати шлях до DLL?

a)

GetModuleFileName

b)

GetEnvPath

c)

GetDllPath

d)

DllInfo

37.

Яка особливість використання DLL у C++?

a)

DLL завжди статичні

b)

DLL мають власний адресний простір

c)

DLL розділяють код між процесами

d)

DLL не використовують стек