Проверете регистрацията на dll. Няколко начина за регистриране на DLL в Windows

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

Има няколко налични метода за отстраняване на този проблем. Нека разгледаме всеки един от тях по-подробно.

Метод 1: OCX / DLL мениджър

OCX / DLL Manager е малка програма, която може да ви помогне да регистрирате OCX библиотека или файл.

За да направите това, ще ви трябва:

  1. Щракнете върху елемента от менюто "Регистрирайте OCX / DLL".
  2. Изберете типа файл за регистрация.
  3. Използване на бутона "Преглед"посочете местоположението на DLL.
  4. Натисни бутона "Регистрирам"и програмата сама ще регистрира файла.

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

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

Метод 2: Стартиране на менюто

Можете да регистрирате DLL с помощта на командата "бягай"в стартовото меню на операционната система Windows. За да направите това, ще трябва да направите следното:


Метод 3: команден ред

Регистрирането на файл чрез командния ред не се различава много от втората опция:

  1. Изберете отбор "бягай"в менюто "Старт".
  2. Въведете в отвореното поле за въвеждане cmd.
  3. Кликнете върху "влез".

Ще видите прозорец, в който ще трябва да въведете същите команди, както във втората опция.

Трябва да се отбележи, че прозорецът на командния ред има функция за поставяне на копирания текст (за удобство). Можете да намерите това меню, като щракнете с десния бутон върху иконата в горния ляв ъгъл.

Метод 4: Отворете с


Възможни грешки

"Файлът не е съвместим с инсталираната версия на Windows"- това означава, че най-вероятно се опитвате да регистрирате 64-битова DLL на 32-битова система или обратно. Използвайте съответната команда, описана във втория метод.

„Входната точка не е намерена“- не всички DLL могат да бъдат регистрирани, някои от тях просто не поддържат командата DllRegisterServer. Също така, появата на грешка може да бъде причинена от факта, че файлът вече е регистриран от системата. Има сайтове, които разпространяват файлове, които всъщност не са библиотеки. В този случай, разбира се, нищо няма да бъде регистрирано.

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

Когато се опитваме да стартираме игра или приложение, може да срещнем грешки като „входната точка dllregisterserver не е намерена“ или „приложението не може да бъде стартирано, dll файлът липсва“. Може да има няколко такива варианта, но същността е една и съща: необходимите библиотеки изобщо не са налични или не са регистрирани. И така, нека да разберем как да използваме библиотеката в операционната система и какво да правим, ако проблемът продължава.

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

По време на инсталирането на Windows и други програми на трети страни, библиотеките се разопаковат в системните папки - dll файлове, които са среда за изпълнение на програмния код за приложения. Без да навлизам в подробности, ето как работят програмите и игрите. И в случаите, когато тези файлове не се виждат от системата, възникват грешки.

Причини за възникване

Редица събития могат да причинят този проблем:

  1. Вирусна инфекция. Нежеланият софтуер може да повреди и изтрие библиотеки от вашия компютър. За да направите това, си струва да проверите машината за вируси и да ги премахнете от твърдия диск.
  2. Грешка в инсталатора. Обикновено доставчикът на софтуер добавя всички необходими системни файлове към инсталационния пакет, за да работи приложението. Но понякога разработчиците забравят за това. В крайна сметка - ако на компютъра няма подходящи ресурси (които са инсталирани с друго приложение), програмата ви няма да стартира. Много по-обидно е, ако сте платили голяма сума за този софтуер.

    Внимание! В някои случаи самият инсталатор предупреждава за необходимостта от изтегляне на допълнително съдържание, за да работи приложението. Например, за някои игри се предлага да инсталирате най-новата версия на DirectX отделно.

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

Методи за регистрация в библиотеката

Има два начина за добавяне на .dll файлове към системния регистър.

Използване на командния ред

За да направите това, трябва да направите следното:


Използване на прозореца Run

Метод с две щраквания:


Защо не мога да регистрирам dll и как да го поправя?

Има три причини за неуспех при регистрирането на системни файлове:

  1. Библиотеката вече е регистрирана. В този случай причината е самият файл, който е повреден или заразен с вирус.
  2. Регистрацията не е възможна. Dll файлът може просто да е празен или да е несъвместим с версията и компонентите на операционната система.

    Внимание! Никога не изтегляйте dll файлове от услуги за хостинг на файлове и други подозрителни сайтове. Изтеглете библиотеки само от официални източници!

  3. Няма функция за регистрация. Някои библиотеки не са предназначени за регистрация и просто нямат тази функция.

Има три начина да излезете от тази ситуация:

  1. Изтеглете официалния системен компонент от ресурса на доставчика. Например файлът xlive.dll изисква от вас да изтеглите и инсталирате пакета Microsoft Games for Windows, който можете да изтеглите от уебсайта на Microsoft.

    Съвет! Ако възникне подобна ситуация, потърсете къде да изтеглите системния компонент (това ще бъде истински сайт), а не отделен файл.

  2. В случай, че сте разработчик и сте създали своята библиотека, регистрирайте я с помощта на regasm.exe.
  3. Понякога, за да използвате .dll файла, трябва да го преместите в папката на приложението - в директорията, където се съхранява изпълнимият файл.exe.

И така, разгледахме редица методи за регистриране на библиотеки в системата и елиминиране на грешката „входната точка на dllregisterserver не е намерена“. Би трябвало да са достатъчни. Но ако имате уникална ситуация или знаете друг начин за решаване на проблема, моля, споделете го в коментарите.

Регистриране на файлове с разширения * .dll и * .ocx

спойлер: Помощ (щракнете, за да отворите)

  • DLL (от английската Dynamic-Link Library - библиотека с динамични връзки) - концепцията на операционната система Microsoft Windows; динамична библиотека, която позволява многократно използване от различни софтуерни приложения. ActiveX контролите и драйверите понякога се наричат ​​K DLL. В света на UNIX подобни функции се изпълняват от т.нар. споделени обекти. Файловият формат * .dll следва същите конвенции като формата на изпълнимия файл * .exe, като комбинира код, таблици и ресурси.
  • ActiveX е името на група технологии, разработени от Microsoft за програмиране на компонентни обектни приложения, базирани на COM модела.
  • COM (съкр. Component Object Model) е компонентен обектен модел на Microsoft, стандартен механизъм, който включва интерфейси, чрез които някои обекти предоставят своите услуги на други; е основата на много обектни технологии, включително OLE и ActiveX).
  • OLE (съкратено от Object Linking and Embedding) е общото име (до 1996 г.) на група обектно-ориентирани технологии на Microsoft, базирани на COM (OLE 1, OLE 2, OLE automation, OLE Database и др.).
  • ActiveX контрол - ActiveX контрол; Microsoft представи през 1996 г. ново име за независими програмируеми компоненти, наричани преди OLE контроли, OCX, OLE персонализирани контроли; за разлика от последните, те ви позволяват да работите с интернет.
  • OCX (съкратено от OLE Custom eXtension) - подвижни контроли, OLE персонализиран контрол, OLE контрол. Казано по-просто, * .ocx файловете са ActiveX контроли, които изпълняват приблизително същите функции като * .dll файловете.
  • OLE персонализиран контрол - специализиран OLE контрол, OLE контрол.
  • OLE контрол - OLE контроли, програмируеми компоненти на приложението с OLE-базиран интерфейс, който им позволява лесно да бъдат включени в други приложения; от 1996 г. се нарича ActiveX контрол. Синоними: OCX, OLE персонализиран контрол.
__________________________

Как да регистрирам * .dll и * .ocx файлове?

Регистрацията на * .dll и * .ocx файлове се извършва с помощта на сървъра за регистрация regsvr32.exe (чийто дисков адрес е \ WINDOWS \ system32).

Помислете за методите за регистрация:

1). Щракнете върху Старт - Изпълни ... (или натиснете бутоните win и r едновременно) - въведете - regsvr32_ file_name_ - OK.

2). Щракнете върху Старт - Изпълни ... - Стартирайте програмата - cmd - OK. Интерпретаторът на команди cmd.exe (команден ред) ще стартира след системния ред

код:

C: \ Документи и настройки \ Потребителско име>

въведете regsvr32 _file_name, например

код:

Regsvr32 Koza.dll

.

3) Използвайте тази настройка, която добавя елементите "Регистрация" и "Дерегистрация" към контекстното меню на DLL и OCX файлове

код:

Редактор на системния регистър на Windows версия 5.00 @ = "regsvr32.exe \"% 1 \ "" @ = "regsvr32.exe / u \"% 1 \ "" @ = "regsvr32.exe \"% 1 \ ""


За да премахнете тази функция от контекстното меню, използвайте настройката:

код:

Редактор на системния регистър на Windows, версия 5.00 [-HKEY_CLASSES_ROOT \ dllfile \ Shell] [-HKEY_CLASSES_ROOT \ dllfile \ Shell \ Register] [-HKEY_CLASSES_ROOT \ dllfile \ Shell \ Register \ command] @ = "regsvr32.exe \" [%-%- \" HKEY_CLASSES_ROOT \ dllfile \ Shell \ Deregister] [-HKEY_CLASSES_ROOT \ dllfile \ Shell \ Deregister \ команда] @ = "regsvr32.exe / u \"% 1 \ "" [-HKEY_CLASSES_ROOT \ ocxfile \ KE \ Shell] ] [-HKEY_CLASSES_ROOT \ ocxfile \ Shell \ Register \ команда] @ = "regsvr32.exe \"% 1 \ ""


4). Ако използвате файловия мениджър на Total Commander, можете да регистрирате * .dll и * .ocx файлове с помощта на командния ред на Total Commander.

________________________

Параметри на Regsvr32:

Regsvr32:] DLL файл

/ u - Отменете регистрацията на DLL
/ s - "Тих" режим; кутиите за съобщения не се показват
/ i - Извиква DllInstall, предавайки незадължителен command_string като параметър,
извиква DllUnInstall, когато се използва с превключвателя / u
/ n - Не извиква DllRegisterServer; това може да се използва с превключвателя / i

Потребителите питат как да регистрират dll файл в Windows 7 и 8. Обикновено, след като срещнат грешки като "Програмата не може да бъде стартирана, тъй като необходимият dll не присъства на компютъра." Нека поговорим за това.

Всъщност регистрирането на библиотека в системата не е толкова трудна задача (ще покажа цели три варианта на един метод) - всъщност е необходима само една стъпка. Единственото задължително условие е да имате администраторски права на Windows.

Има обаче някои нюанси - например, дори успешната регистрация на DLL не е задължително да ви спаси от грешката "липсва библиотека на компютъра", но появата на грешка RegSvr32 със съобщение, че модулът не е съвместим с версията на Windows на този компютър или входната точка на DLLRegisterServer не е намерена. не означава, че правите нещо нередно (което ще обясня в края на статията).

Три начина за регистриране на DLL в OS

Описвайки по-нататъшните стъпки, изхождам от факта, че сте намерили къде трябва да копирате вашата библиотека и DLL вече е в папката System32 или SysWOW64 (и евентуално някъде другаде, ако трябва да е там).

Забележка: по-долу ще бъде описано как да регистрирате DLL библиотека с помощта на regsvr32.exe, но обръщам внимание на факта, че ако имате 64-битова система, тогава имате два regsvr32.exe - един в C: \ папка Windows\ SysWOW64, вторият е C: \ Windows \ System32. И това са различни файлове, с 64-битови в папката System32. Препоръчвам да използвате пълния път до regsvr32.exe по всеки от начините, а не само името на файла, както показах в примерите.

Първият метод се описва в интернет по-често от другите и е както следва:

    Натиснете клавиша Windows + R или менюто "Старт". Windows 7изберете "Run" (ако, разбира се, сте активирали показването му) Въведете regsvr32.exe path_to_dll_file Натиснете OK или Enter.

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

Вторият начин е да стартирате командния ред като администратор и да въведете същата команда от предишния параграф.

    Стартирайте командния ред като администратор. В Windows 8 можете да натиснете Win + X и след това да изберете желания елемент от менюто. В Windows 7 можете да намерите командния ред в менюто "Старт", щракнете с десния бутон върху него и изберете "Изпълни като администратор". Въведете командата regsvr32.exe path_to_dll_library (можете да видите пример на екранната снимка).

Отново е вероятно да не можете да регистрирате DLL в системата.

И последният метод, който също може да бъде полезен в някои случаи:

    Щракнете с десния бутон върху DLL, който искате да регистрирате и изберете елемента от менюто "Отвори с". Щракнете върху "Преглед" и намерете файла regsvr32.exe в папката Windows / System32 или Windows / SysWow64, отворете DLL с него.

Същността на всички описани начини за регистриране на DLL в системата е една и съща, само няколко различни начина за изпълнение на една и съща команда - кой е по-удобен. А сега за това защо се проваляте.

Защо DLL не може да се регистрира

Responsive2 (ширина: 300px; височина: 300px) @media (мин. ширина: 500px) (. Responsive2 (ширина: 336px; височина: 280px))

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

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

И сега как да го поправя:

    Ако сте програмист и регистрирате своя DLL, опитайте regasm. exe Ако сте потребител и нещо не започва със съобщението, че DLL липсва компютър- потърсете в интернет какъв е файлът, а не къде да го изтеглите. Обикновено, знаейки това, можете да изтеглите официалния инсталатор, който ще инсталира оригиналните библиотеки и ще ги регистрира в системата - например за всички файлове с име, започващо с d3d, е достатъчно да инсталирате DirectX от официалния уебсайт, за msvc - една от версиите на Visual Studio Redistributable. (И ако някоя игра не стартира от торент, тогава вижте антивирусните отчети, може да изтрие необходимите DLL, това често се случва с някои модифицирани библиотеки) Обикновено, вместо да регистрира DLL, файлът се поставя в същата папка с изпълнимия файл exe, който изисква тази библиотека.

Това завършва, надявам се, че нещо е станало по-ясно, отколкото беше.



Свързани статии: