Файли dll: що це таке в операційних системах windows та встановлених програмних пакетах?

Чи звертали ви увагу на те, що при установці абсолютно всіх операційних систем Windows або деяких програм в файлових менеджерах, включаючи і стандартний "Провідник", дуже часто можна зустріти об`єкти незнайомого формату у вигляді файлів DLL. Що це за файли і в чому їх призначення, рядові користувачі з початковим рівнем підготовки уявляють собі дуже туманно (якщо не сказати, що не знають взагалі). На жаль, описати всі основні принципи їх роботи і використання по-науковому вийде навряд чи (ТА це й не потрібно), тому спробуємо розглянути всі ці питання, оперуючи простою і зрозумілою мовою.

Файли DLL: що це таке в загальному розумінні?

Розширення DLL утворено від повної назви типу формату-Dynamic Link Library. Тому-то такі об`єкти російською мовою і прийнято називати динамічними бібліотеками. Вони є супутнім компонентами майже всіх відомих додатків, розрахованих на роботу в середовищі Windows, але можуть інтегруватися в систему самостійно, що дозволяє їх віднести до програм, але тільки працюють за рахунок інших додатків.

Файли DLL у кореневому каталозі

Власне, і в самих Windows-системах таких об`єктів знайти можна чимало.

Як працюють динамічні бібліотеки?

Со принципами роботи динамічних бібліотек у багатьох користувачів часто виникає плутанина. У загальному випадку потрібно чітко розуміти, що структура таких об`єктів має на увазі наявність в них програмного виконуваного коду, який обробляється практично так само, як і файли формату EXE. Відмінність полягає в тому, що виконання коду в DLL-бібліотеках проводиться тільки при приміщенні їх в оперативну пам`ять, і без основного додатка, яке відповідає за використання бібліотек, в своїй програмному середовищі виконати код теж неможливо. Таким чином, можна констатувати, що динамічні бібліотеки є свого роду придатками до основних програм і оболонок і можуть містити набагато більше програмної інформації про самому запущеному додатку, яке, якщо можна так сказати, є всього лише обгорткою до основного вмісту всього комплекту. Для того щоб упевнитися в тому, що це так і є, далеко ходити не треба.

Бібліотеки, що відповідають активним процесам

Досить викликати самий звичайний "Диспетчер завдань" або скористатися утилітою Procwss Exploirer і подивитися на активні процеси. Звичайно, в більшості випадків відображаються в основному саме EXE-компоненти, а ось якщо покопатися у використанні оперативної пам`яті, для кожного процесу можна знайти відповідні додаткові бібліотеки, як раз і завантажені безпосередньо в ОЗУ.

Де використовуються файли DLL для Windows 7 та подібних модифікацій?

Тепер перейдемо до практичної сторони розглянутого питання. Звернемо ще увагу на файли DLL. Що це за об`єкти в сенсі прив`язки до програм, можна пояснити на двох простих прикладах. За основу візьмемо розгляд і системних компонентів, і файлів сторонніх програмних пакетів.

Як вже говорилося вище, файли DLL в Windows використовуються повсюдно, і без них більшість програм, якщо тільки вони спочатку не представлені в портативному виконанні, не працюють. По-перше, деякі системні компоненти такого типу можуть використовуватися або самою операційною системою, або сторонніми заставленими додатками. По-друге, відповідні бібліотеки самої програми без виконуваних файлів Windows також можуть не працювати.

Помилка динамічної бібліотеки в STEAM

Саме тому при виникненні проблем, скажімо, з файлом API.dll, який необхідний для коректного функціонування ігрової платформи STEAM, вона видає помилки. Ось і доводиться завантажувати оригінальний об`єкт з Інтернету, але інтегрувати його в систему звичайним копіюванням в потрібну локацію не вийде (про це трохи пізніше).

Другий приклад здасться явно знайомим всім комп`ютерним музикантам, які працюють зі всілякими плагінами формату VST. Інструменти і ефекти можуть поставлятися у вигляді одиночних файлів бібліотек, але ж запустити їх подвійним кліком, як звичайний додаток, неможливо!

Файл FL Studio

Щоб їх використовувати, потрібно зробити підключення через хост віртуальної студії або секвенсора. Виходить, що музична програма і є тим основним мостом, який дозволяє завантажити файл DLL в оперативну пам`ять і виконати міститься до нього програмний код.

Як встановити бібліотеки в середовищі Windows?

І ще кілька слів про файли DLL. Що це таке, трохи розібралися, а тепер подивимося на деякі нюанси інтегрування їх в середу операційна система. Якщо просто скопіювати такий об`єкт (нехай навіть в потрібне місце), Windows автоматично його не розпізнає.

Для усунення проблем з постійною видачею повідомлень про те, що якийсь файл DLL не знайдений, бібліотеку потрібно зареєструвати. Робиться це або через консоль "Виконати" «або через командний рядок, яка повинна запускатися виключно від імені адміністратора шляхом використання спеціального інструменту системи regsvr32.exe (при введенні команди розширення можна не вказувати). У самій же команді прописується назва засобу реєстрації, а потім вказується повний шлях до місця розташування реєстрованого компонента. Наприклад, файл бібліотеки (умовно назвемо його 1.dll) збережено на диску» C " у каталозі Lib. Команда реєстрації буде виглядати наступним чином: regsvr32.exe “c:Lib1.dll " (обов`язково з лапками, як показано в прикладі).

Усунення проблем з відсутністю бібліотек в системі

Нарешті, останнє. Проблеми, пов`язані з відсутністю або пошкодженням системних динамічних бібліотек, є мало не найпоширенішими, через що Windows просто відмовляється працювати. Задля виправлення ситуацій подібного роду не слід шукати файли в Інтернеті, а потім реєструвати самостійно.

Програма DLL Suite

Можна скористатися неперевершеною утилітою DLL Suite, яка сама визначить пошкоджені або відсутні об`єкти, завантажить їх з Інтернету і зареєструє без участі користувача. Знову ж таки, мова йде виключно про бібліотеках самої операційної системи, а не про встановлених в ній призначених для користувача додатках.

Статті на тему