Файлы DLL: что это такое в операционных системах Windows и устанавливаемых программных пакетах?

Обращали ли вы внимание на то, что при установке абсолютно всех операционных систем Windows или некоторых программ в файловых менеджерах, включая и стандартный «Проводник», очень часто можно встретить объекты незнакомого формата в виде файлов DLL. Что это за файлы и в чем их назначение, рядовые пользователи с начальным уровнем подготовки представляют себе очень туманно (если не сказать, что не знают вообще). К сожалению, описать все основные принципы их работы и использования по-научному получится вряд ли (да это и не нужно), поэтому попробуем рассмотреть все эти вопросы, оперируя простым и понятным языком.

Файлы DLL: что это такое в общем понимании?

Расширение DLL образовано от полного названия типа формата – Dynamic Link Library. Поэтому-то такие объекты на русском языке и принято называть динамическими библиотеками. Они являются сопутствующим компонентами почти всех известных приложений, рассчитанных на работу в среде Windows, но могут интегрироваться в систему самостоятельно, что позволяет их отнести к программам, но только работающим за счет других приложений.

Собственно, и в самих Windows-системах таких объектов найти можно немало.

Как работают динамические библиотеки?

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

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

Где используются файлы DLL для Windows 7 и аналогичных модификаций?

Теперь перейдем к практической стороне рассматриваемого вопроса. Обратим еще внимание на файлы DLL. Что это за объекты в смысле привязки к программам, можно пояснить на двух простых примерах. За основу возьмем рассмотрение и системных компонентов, и файлов сторонних программных пакетов.

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

Именно поэтому при возникновении проблем, скажем, с файлом API.dll, который необходим для корректного функционирования игровой платформы STEAM, она выдает ошибки. Вот и приходится скачивать оригинальный объект из Интернета, но интегрировать его в систему обычным копированием в нужную локацию не получится (об этом чуть позже).

Второй пример покажется явно знакомым всем компьютерным музыкантам, работающим со всевозможными плагинами формата VST. Инструменты и эффекты могут поставляться в виде одиночных файлов библиотек, но ведь запустить их двойным кликом, как обычное приложение, невозможно!

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

Как устанавливать библиотеки в среде Windows?

И еще несколько слов о файлах DLL. Что это такое, немного разобрались, а теперь посмотрим на некоторые нюансы интегрирования их в среду операционной системы. Если просто скопировать такой объект (пусть даже в нужное место), Windows автоматически его не распознает.

Для устранения проблем с постоянной выдачей сообщений о том, что какой-то файл DLL не найден, библиотеку нужно зарегистрировать. Делается это либо через консоль «Выполнить», либо через командную строку, которая должна запускаться исключительно от имени администратора путем использования специального инструмента системы regsvr32.exe (при вводе команды расширение можно не указывать). В самой же команде прописывается название средства регистрации, а затем указывается полный путь к местоположению регистрируемого компонента. Например, файл библиотеки (условно назовем его 1.dll) сохранен на диске «С» в каталоге Lib. Команда регистрации будет выглядеть следующим образом: regsvr32.exe “c:\Lib\1.dll” (обязательно с кавычками, как показано в примере).

Устранение проблем с отсутствием библиотек в системе

Наконец, самое последнее. Проблемы, связанные с отсутствием или повреждением системных динамических библиотек, являются чуть ли не самыми распространенными, из-за чего Windows попросту отказывается работать. Для исправления ситуаций подобного рода не следует искать файлы в Интернете, а затем регистрировать самостоятельно.

Можно воспользоваться непревзойденной утилитой DLL Suite, которая сама определит поврежденные или отсутствующие объекты, загрузит их из интернета и зарегистрирует без участия пользователя. Опять же, речь идет исключительно о библиотеках самой операционной системы, а не об установленных в ней пользовательских приложениях.

Комментарии