Какво представляват DLL файловете? Странно - библиотеката

Компютърните програми стават все по-умни и все повече приличащи на хора. Не е изненадващо, че в един момент те също се нуждаеха от библиотеки. Тогава се появи първата DLL. Dynamic Link Library е клиентска библиотека.

Какво се съхранява в DLL?

Програмата е начин за обработка на информация. В този случай често е необходимо да се извършват същите действия. Такива действия в програмирането се наричат ​​процедури и функции. Да предположим, че една програма трябва да умножи 100 пъти един номер на друг. Тя ще се позове на съответната функция в нея, докато не завърши всички действия. Но програми, които изискват операция за умножение са многобройни. И преди да се появи DLL, всяка от тях съдържаше една и съща функция. Физически, тя представлява няколко реда в програмата. Всеки знак е един байт. Той се зарежда в паметта на компютъра. А паметта не е безгранична.
Програмистите бързо осъзнаха, че е възможно да се поставят такива функции в една програма. И който и да е, нека се обърне към нея. Така че имаше DLL. Това е библиотека, в която се съхраняват общи функции вместо книги.

Какво представляват DLL файловете?

Компютърът знае само един начин за съхраняване на информация. Той я записва като файл. DLL не изтрива общата съдба. Той се съхранява като файлове на window.dll. Това означава, че в операционната система Windows библиотечните файлове се състоят от име и разширение, разделени с точка. Например: msvcp120.dll. Името на файла може да бъде всяко, а разширението винаги е dll. Те се съхраняват в системната папка на Windows, "system32". Ето защо, всяка програма "знае" къдеприложите, за да получите желаната функция. Ако библиотеката се нуждае само от един изпълним файл, той може да се намира на друго място.

Как работи?

Изпълнителният файл включва така наречената таблица за импортиране. Той съдържа информация за това кои библиотеки и функции ще са необходими за работа. Когато програмата е стартирана, системата чете тази информация от таблицата за импортиране. След това зарежда необходимата dll в паметта. Изискваните функции се копират в адресното пространство на изпълним файл. След това библиотеката се разтоварва от паметта и я освобождава за други задачи. Тази информация вече е достатъчна, за да се разбере какво представляват DLL файловете. В действителност всичко е много по-сложно.

Динамично свързващ ад

Би било хубаво, ако не беше преследване на съвършенство. Програмите стават по-къси, паметта се използва по-добре, скоростта нараства пред очите. Но искам да бъда по-кратък, по-добър, по-бърз. Следователно има нови версии на стари библиотеки. Тук и там е това, което е означено с термина "DLL ад", "Dll ​​ад" по наше мнение. Напълно официален термин. Да предвиди кога, по дяволите, не може да им отвори вратите.
Това е най-често случаят: само вчера всичко работи като часовник, а днес една или друга програма хвърля съобщение, че някаква библиотека не е добра, трябва да бъде пресъздадена. Ако знаете какъв DLL файл, на който се изпраща съобщение, можете да го потърсите и той ще бъде намерен. Къде трябва да бъде. Време е да си припомним, че някой софтуер е изтеглен наскоро. Инсталира се нормално и работи безоплаквания. Често причината за неясните провали е именно в това. Обяснението е просто: програмата е инсталирала нова версия на dll. Тя е несъвместима със старата.

Изходът е - това е "вход отвътре"

Можете да вземете и инсталирате старата версия. Тогава инсталацията вчера ще спре да работи. Какво да дарите? Нищо. Можете да използвате и двете версии. Поставете една в "Windowssystem32", друга с програмата. Когато системата започне да търси файл, първо я търси в папката на изпълнимия файл. Няма да открие, че ще търси в системата. Основното нещо - не бъркайте, че някъде трябва да лъжа. Този метод се нарича "пренасочване". Излезли от ада? Да. Но имаше малки нюанси. Има и други грешки на dll файл. Може просто да липсва. Кой е виновен - вторият въпрос. Първо: какво да правим?

Намерете и инсталирайте

Какво е msvcp120 dll файл, не всеки знае. Но кой "късметлия" ще види:
Знае какво разбира DLL файлът е библиотека. Къде се намира - е известно. Защо този файл е избран за пример? Защото се среща по-често от други. Това е важен системен файл, който използва много програми. Има два начина за отстраняване на грешката:
  • преинсталирайте програмата, която се нуждае от този файл;
  • ръчно задаване на библиотеката.
  • Когато преинсталирате програмата, тя ще се изтегли и инсталира dll. Инсталацията ръчно включва няколко стъпки:
  • изтегляне на файла от интернет;
  • постави го в желаната папка;
  • регистрира библиотеката;
  • рестартирайте компютъра.
  • Същото трябва да се направи с всеки другdll файл.

    Вкусно на трето

    Ужасният кошмар на DLL ада мотивира програмистите на Microsoft да създадат .NET Framework. Те вярват, че Dll hell е последният кръг от човека, създаден от ада, а новата платформа ще доведе директно до рая. Също така създадени от човека.

    Свързани публикации