телевизори. Конзоли. Проектори и аксесоари. Технологии. Цифрова телевизия

Работа с библиотеки с динамични връзки (DLL). Програмата не може да стартира, защото на компютъра липсва необходимата dll

Вероятно всеки потребител на компютър, геймър и други са виждали изскачаща dll грешка, беше особено неприятно, когато след закупуване или инсталиране на нова игра системата изхвърля заветния прозорец, когато започва с думите „dll файлът не е намерен. ” Най-често това съобщение изглежда така:

Програмата не може да бъде стартирана, защото ****.dll липсва на компютъра. Опитайте да преинсталирате програмата

Веднага искаме да счупим нещо (нервни сме, това е нормално), често хората тичат до магазина, от който са купили диска, и започват скандал там. Нервните клетки не се възстановяват - каза някой и аз го потвърдих. Нека запомним и разберем две неща: всички dll грешки, а не dll грешки - това е проблем на вашия компютър; можем да се отървем от грешките на Windows сам, но не завинаги; Ние сме в състояние да елиминираме възможността за изскачане на всички грешки на Windows, ако поддържаме системата актуална.

Какво е dll, dll файл, за какво са, къде мога да ги намеря?

Dll (динамическа библиотека за връзки) - дословно от английски. С други думи, динамичната библиотека за връзки е набор от инструкции и библиотеки за извършване на различни процеси на вашия компютър. Когато стартирате програми и игри, се свързват необходимите библиотеки за тяхната правилна, пълноценна работа. Те се намират в C:WindowsSystem32. Ако библиотеката липсва, тя изобщо не е там, получаваме любимата dll и . За щастие, операционната система ни казва кой файл или библиотека липсва, което помага бързо да определим кои dll файлове липсват и да разрешим проблема.

Грешка при стартиране на dll и как да коригирам грешки в dll?

За да коригираме грешката в dll, за нас е важно да знаем коя библиотека липсва и кой компонент на операционната система е отговорен за нейното присъствие. За коригиране на грешки предлагам таблица с най-често срещаните DLL грешки във формата: „опция за грешка или липсващ файл >>> какво трябва да се направи, изтегли, инсталира, за да се поправи“

Примерна dll грешка (*-dll) Решение за коригиране на грешката
Файлът не е намерен: dxgi.*, d3dx9_25.*, d3d11.*, d3dx9.*, d3dx9_43.*, d3dx10_43.*, d3dx9_26.*, d3dx9_30.*, d3dx9_27.*, d3dx11_43.*, d3dcompiler_43.*, d3d10. *, xinput1_3.*, d3dx9_31.*, xinput1_2.*, d3dx9_31.*, d3dx9_34.*, d3dx9_42.*, x3daudio1_7.*, x3daudio1_6.*, xrsound.*, преинсталирането на приложението ще помогне за отстраняването на този проблем, подобно изтегляне, инсталиране, актуализиране на DirectX компоненти ()
Файлът xlive.* не е намерен Компонентът Game for Windows Live липсва, имате нужда от тази услуга
steam_api не е намерен.* инсталирайте услугата Steam
програмата не може да бъде стартирана, защото няма файлове: msvcr90.*, msvcr110.*, msvcr100.*, msvcr80.*, msvcr120.*, msvcrt.*, msvcr71.*, msvcrt.*, msvcp120.*, msvcp110.* x64 за да коригирате тази грешка, изтеглете, инсталирайте Инсталиране
Входната точка не е намерена, uplay_r1_loader.*, Uplay.exe, uplay_ach_earnAchievement не е намерена в DLL, uplay.*, ubiorbitapi_r2_loader.* изтеглете, инсталирайте Ubisoft Game Launcher (ако не съществува), актуализирайте Microsoft .NET Framework
Програмата не може да бъде стартирана, защото компютърът няма physxcudart_20.*, physxloader.* и други physx…* изтегляне, инсталиране

В много форуми и сайтове пишат и препоръчват да изтеглите dll файла, да го поставите където ви трябва и това ще поправи Dll грешката. Не бих препоръчал да правите това (е, освен в специални случаи), тъй като конкретна програма, модул или компонент на операционната система Windows отговаря за всеки файл или dll библиотека. Като актуализирате напълно необходимата програма, вие коригирате съществуващата dll грешка и се предупреждавате срещу възможни последващи грешки в dll библиотеките.

Сега знаем какъв вид dll грешка е това при стартиране на игри и приложения, как да коригираме dll грешката, как да помогнем на нашия компютър да не прави грешки в бъдеще.

ЧЗВ

  1. Отворете zip файла, който сте изтеглили от сайта.
  2. Разархивирайте DLL файла на всяко място на вашия компютър.
    • След това ви съветваме да поставите файла в папката на програмата, която изисква този файл. Уверете се, че използвате 32-битов DLL файлов формат за 32-битова програма и 64-битов DLL файлов формат за 64-битова програма, в противен случай може да получите грешка 0xc000007b.
  3. Ако горните стъпки не решат проблема ви, поставете файла в системната папка. По подразбиране тази папка се намира тук:
    • C:\Windows\System (Windows 95/98/Me),
      C:\WINNT\System32 (Windows NT/2000), или
      C:\Windows\System32 (Windows XP, Vista, 7, 8, 8.1, 10).
  4. В 64-битов Windows папката по подразбиране за 32-битови DLL файлове се намира тук:

C:\Windows\SysWOW64\ и за 64-битови DLL файлове
C:\Windows\System32\ .

Не забравяйте да презапишете всички съществуващи файлове (но запазете резервно копие на оригиналния файл).

Рестартирайте компютъра си.

Ако това не разреши проблема, опитайте следните стъпки, за да добавите файла към системния регистър:

За 32-битови DLL файлове на 32-битови версии на Windows и за 64-битови DLL файлове на 64-битови Windows:

  1. Отворете команден ред с повишени права.
    • За да направите това, щракнете върху Старт, Всички програми, изберете Аксесоари, щракнете с десния бутон върху командния ред, след което щракнете върху „Изпълни като администратор“.
    • Ако бъдете помолени да въведете администраторска парола или да потвърдите, въведете паролата или щракнете върху Разреши.
  2. След това въведете regsvr32 "filename".dll и натиснете Enter.

За да добавите 32-битови DLL файлове към системния регистър на 64-битов Windows:

  1. Отворете команден ред с повишени права, като следвате стъпките по-горе.
    • cd c:\windows\syswow64\
  2. След това въведете следното и натиснете Enter:
    • regsvr32 c:\windows\syswow64\"име на файл".dll

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

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

Библиотека с динамични връзки

DLL (на английски: Dynamic-link library) - динамична библиотека

DLL (на английски: Dynamic-link library) е концепция на операционната система Microsoft Windows, динамична библиотека, която позволява многократно използване от различни софтуерни приложения, концепция на операционната система Microsoft Windows. DLL също така включват ActiveX контроли и драйвери.

DLL файловият формат следва същите конвенции като EXE изпълнимия файлов формат, като комбинира кодове, таблици и ресурси.

Цели на въвеждане на DLL

Първоначално се предполагаше, че въвеждането на DLL би позволило ефективно управление на паметта и дисковото пространство, като се използва само един екземпляр на библиотечни модули за много приложения. Това беше особено важно за ранните версии на Microsoft Windows със сериозни ограничения на паметта.

Освен това беше предназначено да се подобри ефективността на разработването и използването на системни инструменти чрез модулност. Замяната на DLL програми от една версия на друга трябваше да позволи на системата да се разшири независимо, без да засяга приложенията. В допълнение, DLL би могло да се използва от различни видове приложения - например Microsoft Office, Microsoft Visual Studio и др.

По-късно идеята за модулност прераства в концепцията за ActiveX контроли.

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

Често се случва някоя програма да не иска да стартира, защото... Липсва ви определен DLL файл на вашия компютър. Какво да направите в този случай? Трябва да изтеглите и инсталирате този файл. Обикновено няма проблеми с изтеглянето на DLL файл от интернет, но как да го инсталирате?

Първият начин за инсталиране на DLL файл:
Най-лесният начин е просто да поставите dll файла, който сте изтеглили, в папката с програмата, която се опитвате да стартирате. Този метод е много прост, но не винаги работи.

Вторият начин за инсталиране на DLL файл:
Вторият метод е да поставите изтегления dll файл в системните папки на вашата операционна система. Първо, трябва да разберете каква операционна система имате. За да направите това, щракнете с десния бутон върху иконата "Моят компютър" на работния плот и отидете на "Свойства". Там ще бъде посочен типът на вашата операционна система:


Ако имате 32-битова операционна система, тогава:
  • Отворете Моят компютър.
  • Отидете в папката "Windows".
  • Намерете там папката "System32" и поставете изтегления DLL файл в нея.
Ако имате 64-битова операционна система, тогава:
  • Отворете Моят компютър.
  • Отворете системното устройство (обикновено устройство "C").
  • Отидете в папката "Windows".
  • Намерете папката "SysWOW64" там и поставете изтегления DLL файл в нея.
  • Рестартирайте компютъра си, за да влязат в сила промените.
Третият начин за инсталиране на DLL файл:
Третият метод се използва, ако сте инсталирали dll файла чрез втория метод, но все още получавате грешка. Трябва ръчно да посочите на системата, че сте инсталирали dll файла. За това:
  • Отидете в менюто "Старт".
  • Въведете "cmd" в лентата за търсене. И отворете намерената програма.
  • В прозореца, който се отваря, въведете " regsvr32 име_на_dll_файл.dll". (например така: "regsvr32 test.dll")
  • Рестартирайте компютъра си.

Ако някоя .dll библиотека липсва или е повредена на вашия компютър, свързаната програма или услуга няма да работи правилно. Windows ще изведе грешка, че DLL файлът е повреден или липсва. За да разрешите проблема, трябва да изтеглите необходимата библиотека за вашата версия на Windows, да я копирате в желаната папка и да я регистрирате в системата.

Независимо коя програма и за какво се използва dll файлът, инсталирането и регистрацията на библиотеката винаги ще следват един и същ алгоритъм. Всички версии на Windows OS следват едни и същи правила при свързване и регистриране на динамични библиотеки.

Инструкция стъпка по стъпка:

Как и къде да копирате DLL файл

Грешки с библиотеки с динамични връзки (DLL) възникват по различни причини: файлът е повреден, несъвместим с Windows или конкретна програма, заразен с вируси или изтрит. Решението винаги е едно и също: изтеглете правилната и пълна версия на библиотеката и след това регистрирайте файла в системата чрез командния ред. Обикновено целият процес отнема не повече от 2-5 минути.

Можете да поставите (разархивирате и копирате) всякакви dll библиотеки тук и инсталираните файлове ще работят:

  • За Windows 95/98/Аз- файлът се копира в папката C:\Windows\System
  • За Windows NT/2000- файлът се копира в папката C:\WINNT\System32
  • За Windows XP, Vista, 7, 8- копиране в папка C:\Windows\System32
  • За 64-битов Windows- копирайте dll файла в папка C:\Windows\SysWOW64

Къде можете да изтеглите необходимата библиотека:

  • Ако това е игра или програма: с различна версия на играта, от друг компютър, на който работи приложението, от диск (преинсталирайте програмата).
  • Ако това е системна библиотека, проверете уместността на драйверите, DirectX или друг компонент, ако системата пише в кой файл или програма е направена грешката. Можете да копирате dll от друг компютър с подобен битов размер и версия на Windows (7, 8, 10). Грешката може да не е причинена от самата библиотека, но и от програмата, която я използва.
  • Винаги можете да изтеглите желаната версия на файла от dll архиви като dll.ru или ru.dll-files.com. Внимателно проверете за коя версия на ОС е предназначена библиотеката. Трябва също така внимателно да разгледате какво се изтегля: вместо необходимата библиотека, много сайтове се опитват да вмъкнат собствен платен софтуер, за да коригират грешки с DLL файлове.
  • Опитайте се да намерите статия с решения на проблеми относно желания файл в раздела или използвайте търсенето в сайта.

Може би играта или софтуерът е несъвместим с версията на Windows; решението може да е да го стартирате в режим на съвместимост. Ако файловете са блокирани от антивирусна програма, трябва да разгледате по-отблизо сигурността на приложението или да добавите файлове към антивирусни изключения.

Всички промени ще влязат в сила след регистриране на библиотеката в системата и рестартиране на компютъра. Преди това опитът да стартирате нещо е безполезен - системата няма да се свърже с файла.

За да проверите капацитета на системата, трябва да щракнете с десния бутон върху иконата "Моя компютър"и изберете елемент "Имоти". В папката, която се отваря, в секцията Система ще бъде написано: „Тип система: 64-битова операционна система, процесор x64.“

Регистриране на библиотека в Windows

Най-лесният начин да регистрирате DLL в Windows е през командния ред или прозореца за изпълнение. За да отворите командния ред, трябва да: щракнете върху Старт -> Изпълнение или клавишна комбинация Win+R, влезте cmd.exeи натиснете Въведете. Можете да въведете командата директно в това поле, без да отваряте командния ред.

За да регистрирате библиотеката, трябва да напишете командата regsvr32 име на файл.dllи натиснете Въведете. Например regsvr32.exe msvcp110.dll.

За да влязат в сила промените и библиотеката да започне да работи, трябва за рестартиране на компютър. Ако Windows не иска да намери файла, който искате, можете да посочите пълния път: regsvr32.exe пълен_път_към_файл.dll, например regsvr32.exe C:/Windows/System32/msvcp110.dll.

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

Поради тази причина предлагам внимателно да анализираме стартирането на DLL файлове в различни версии на Windows, така че да не възниква и да не се налага да си мъчите мозъка от векове как да се отървете от него.

DLL грешка при стартиране на игри

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

В случая с тази част от кода можем да заявим, че стартирането на DLL е успешно, но това не винаги се случва, тъй като обикновено необходимите библиотеки се извикват по време на стартиране, когато играта зарежда всички компоненти, необходими за работа в RAM на компютъра. И това е мястото, където различни фактори могат да попречат на стартирането на DLL.

Има моменти, когато компютърна игра иска да извика функция, намираща се в DLL на трета страна. Всичко се случваше чудесно, дълго време, но изведнъж стартирането не се случи и на екрана започна да се появява досаден прозорец със съобщение за грешка. Започнахме да повтаряме стартирането на DLL и да проучим грешката. Оказа се, че разработчикът на библиотеката просто е премахнал тази функция от изходния код на DLL и не си е направил труда да включи този елемент в документацията. Програмистите на играта трябваше спешно да пуснат корекция и да актуализират изходния код на своя продукт, така че геймърите да могат да продължат да играят нормално. Или помислете за друг пример.

Тук виждаме, че играта показва съобщение за грешка на DLL, което се дължи на факта, че не може да намери необходимия . ? Да, много просто! Първо, струва си да проверим дали системата наистина има DLL, от който се нуждаем. Ако има такъв, най-вероятно е повреден и играта не може да стартира DLL. В този случай би било препоръчително да го регистрирате в системата. Вече сме писали как да направим това, но нека да разгледаме тази точка отново. Трябва да изпълните командата regsvr32 в командния ред, която отговаря за регистриране или дерегистриране на DLL файлове в системата.

След като процесът на регистрация приключи, играта трябва автоматично да стартира DLL по време на зареждането си и ако файлът отговаря на всички изисквания на играта (версия, битовост), ще можете да се насладите на играта. Не можем обаче да наречем този метод за стартиране на DLL файлове оптимален, защото Малко вероятно е да намерите точно версията на точната библиотека, от която се нуждаете. Много по-безопасно е да изтеглите най-новата версия на софтуера или играта, която включва този DLL файл. Преинсталирайте целия софтуерен продукт заедно с тази библиотека. Рестартирайте и стартирайте DLL отново.



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