Як підключити розділяється бібліотеку до проекту в visual stuido

Схожі пости

Написання вашої бібліотеки

Створіть проект File-> New-> Project ...
З'явиться вікно New Project. Поле Name введіть назву для бібліотеки, наприклад MyMathList:
У що ще діалоговому вікні Win32 Application Wizard натисніть Next.

Як підключити розділяється бібліотеку до проекту в visual stuido

У вікні Win32 Application Wazard натисніть на Next.
Як підключити розділяється бібліотеку до проекту в visual stuido

З'явиться друге вікно майстра створення додатків. У групі Application type вибираємо DLL. в групі Additional options кому що подобається, я вважаю за краще порожній проект (опція Empty project). Після того як створюваний проект налаштований належним чином, тиснемо на Finish.
Як підключити розділяється бібліотеку до проекту в visual stuido

У Visual Studio з'явиться порожній проект бібліотеки. Далі ми додамо до проекту файли з вихідним кодом:
Як підключити розділяється бібліотеку до проекту в visual stuido

Почнемо додавати функції, які будуть доступні з нашої ліби. Щоб функції були доступні для коду, який буде використовувати нашу лібу, потрібно прописати заголовки цих функцій в хедаре. Додамо до нашої Лібе хедери, для цього клацаємо правою кнопкою миші на віртуальному каталозі Header Files. далі Add-> New Item ....
Як підключити розділяється бібліотеку до проекту в visual stuido

З'явиться вікно Add New Item. в якому ми виберемо що хочемо додати, в даному випадку це заголовки і дамо йому ім'я, нехай це буде MyMathFunctions і тиснемо на Add.
Як підключити розділяється бібліотеку до проекту в visual stuido

Тепер додайте такий код:

MyMathFunctions.h

Після того як хедер доданий, залишилося додати його імплементацію. Виконайте все теж саме по додаванню Айтем, тільки у вікні додавання, замість Header File (.h) виберіть C ++ File (.cpp) і додайте такий код:

MyMathFunctions.cpp

Підключення розділяється ліби до проекту

Ось такий дуже простий, але наочний код, який буде працювати з розділяється либой.
Тепер спробуємо зібрати наш проект. У вікні Solution Explorer виберіть наш проект і натисніть F7.
В результаті збірка не пройде і у вікні виводу Output має з'явиться щось подібне до цього:

Збірка і запуск проекту

Збірка і запуск проекту досить тривіальна, просто вибираєте проект у вікні Solution Explorer і натискаємо на F7:

Якщо 1 succeeded, 0 failed значить все повинно бути норм, запускаємо проект Ctrl-F5. Але після того як додаток запустили, вилітає системна помилка:

Як підключити розділяється бібліотеку до проекту в visual stuido

Вона означає, що додаток залежить від розділяється ліби, яку (тобто лібу) не може знайти. Виникає питання, а файл з розширенням lib тоді що? Справа в тому що файл з розширенням lib це трошки не те. Файл з розширенням lib це файл для віндового проекту, в якому зберігається якась метадата про яку поділяє бібліотеці як проекту з нею взаємодіяти, а сама бібліотека (файл з розширенням dll) містить власне сам виконуваний код, тобто код де робляться арифметичні операції. Ось про деелельке ми в проекті ніде нічого не згадували і нікуди нічого не переносили, бо додаток за замовчуванням шукає її в каталозі, куди поміщається файл з розширенням exe. Загалом останнім, що нам залишилося зробити це скопіювати файл з розширенням dll в каталог програми, яка буде юзати нашу бібліотеку, в нашому випадку деелельку потрібно перемістити сюди: MathFunctionsUser / Debug.
Тепер запустимо додаток ще раз (можна без складання) командою Ctrl + F5 і тепер повинні отримати ось такий висновок в командному вікні:

Тепер наше додаток юзает сёрд паті лібу з найпростішими аріфмітіческімі операціями.

Підключення сёрд паті ліби до проекту на Visual Studio під Віндовс, завдання м'яко кажучи не тривіальне тобто мінімум коду і максимум наданих діалогових вікон. Але оскільки в реальності додатків написаних під операційну систему виндовс досить багато, робити це доводиться досить часто. Але не завжди доводиться працювати в віжуалом (хоча віжуал студіо проекти іншого вибору не надають) ще іноді треба підключати сёрд паті ліби в командному рядку. В наступному пості розглянемо цей спосіб.