Delphi 3. Библиотека программиста

       

Где Windows ищет DLL


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

Итак, Windows ищет DLL в следующих местах (и в следующем порядке):

  1. Каталог, из которого было загружено приложение.
  2. Текущий каталог.
  3. Системный каталог Windows.
  4. Только для Windows NT: системный каталог 16-разрядной Windows.
  5. Каталог Windows.

Каталоги, перечисленные в переменной окружения PATH.

В случае динамического импорта при вызове LoadLibrary можно указать для DLL полный путь, тогда Windows просмотрит только заданный каталог. Если вы хотите, чтобы Windows автоматически загружала DLL при запуске (статический импорт), такой возможности уже не будет.



Содержание раздела