Корисниците прашуваат за тоа како да ја регистрираат DLL-датотеката во Windows 7 и 8. Обично, откако наидуваат на грешки како "Програмата не може да се стартува, бидејќи потребната DLL датотека не е на компјутерот". За ова и разговор.
Всушност, регистрирањето на библиотека во систем не е толку тешка задача (ќе покажам три варијации на еден метод) - всушност, потребен е само еден чекор. Единствениот услов е дека имате администраторски права на Windows.
Сепак, постојат неколку нијанси - на пример, дури и успешната регистрација на DLL не мора да ве спаси од библиотеката што недостасува грешка на компјутерот, како и појавата на грешка RegSvr32 со пораката дека модулот не е компатибилен со верзијата на Windows на овој компјутер или точка за влез DLLRegisterServer не е пронајдена. Тоа не значи дека правиш нешто лошо (ова ќе го објаснам на крајот од статијата).
Три начини за регистрирање на DLL во оперативниот систем
Опишувајќи ги следните чекори, претпоставувам дека сте нашол каде што треба да ја копирате вашата библиотека и DLL веќе е во папката System32 или SysWOW64 (а можеби и на друго место, ако треба да биде таму).
Забелешка: подолу ќе се опише како да се регистрира библиотеката DLL користејќи regsvr32.exe, сепак, јас го привлекувам вашето внимание на фактот дека ако имате 64-битен систем, тогаш имате две regsvr32.exe - еден во папката C: Windows SysWOW64 втората е C: Windows System32. И ова се различни датотеки, со 64-битна локација во папката System32. Препорачувам да ја користам целосната патека до regsvr32.exe на секој од начините, а не само името на датотеката, како што покажав во примерите.
Првиот метод е опишан на Интернет почесто од другите и се состои од следново:
- Притиснете ги копчињата Windows + R или одберете ја опцијата Run (Стартувај) во Windows 7 Start менито (ако, се разбира, го овозможивте неговиот екран).
- Внесете regsvr32.exe path_to_file_DLL
- Кликнете на OK или Enter.
После тоа, ако се е во ред, треба да ја видите пораката дека библиотеката е успешно регистрирана. Но, со голема веројатност ќе видите друга порака - Модулот е вчитан, но влезна точка DllRegisterServer не е пронајдена и вреди да се провери дали вашиот DLL е точна датотека (ќе пишувам за ова подоцна).
Вториот начин е да ја стартувате командната линија како администратор и да ја внесете истата команда од претходната ставка.
- Изврши командната линија како Администратор. Во Windows 8, можете да притиснете на копчињата Win + X и потоа одберете ја саканата ставка во менито. Во Windows 7, можете да ја најдете командната линија во менито Start, десен-клик на неа и изберете "Стартувај како администратор".
- Внесете ја командата regsvr32.exe path_to_library_DLL (можете да видите пример на екранот).
Повторно, веројатно нема да можете да го регистрирате DLL во системот.
И последниот метод, кој исто така може да биде корисен во некои случаи:
- Десен-клик на DLL што сакате да го регистрирате и изберете ја изборната ставка "Отвори со".
- Кликнете на "Browse" и пронајдете ја датотеката regsvr32.exe во папката Windows / System32 или Windows / SysWow64, отворете го DLL користејќи го.
Суштината на сите опишани начини за регистрирање на DLL во системот е иста, само неколку различни начини за извршување на истата команда - на кого тоа е попогодно. И сега зошто не можете да направите ништо.
Зошто не може да се регистрира DLL
Значи, немате никаква DLL датотека, поради тоа што ја гледате грешката при стартување на играта или програма, ја преземавте оваа датотека од Интернет и обидете се да се регистрирате, но или влезна точка DllRegisterServer или модулот не е компатибилна со тековната верзија на Windows и можеби нешто друго, тоа е, DLL регистрација е невозможно.
Зошто ова се случува (во натамошниот текст, и како да го поправите):
- Не сите DLL-датотеки се дизајнирани да бидат регистрирани. За да биде регистрирано на овој начин, мора да има поддршка за функцијата DllRegisterServer. Понекогаш грешка е исто така предизвикана од фактот дека библиотеката е веќе регистрирана.
- Некои сајтови кои нудат да преземете DLL, всушност, содржат фиктивни датотеки со името што го барате и не може да се регистрираат, бидејќи во реалноста ова не е библиотека.
И сега како да го исправиме:
- Ако сте програмер и регистрирате вашиот DLL, пробајте regasm.exe
- Ако сте корисник и не започнете нешто со порака дека DLL не е на компјутерот, пребарајте го интернетот за каква датотека е и не каде да ја преземете. Знаејќи го ова, обично може да го преземете официјалниот инсталатер кој ги инсталира оригиналните библиотеки и ги регистрира во системот - на пример, за сите датотеки со име што започнува со d3d, само ставете DirectX од официјалниот веб-сајт на Microsoft, за msvc, една од верзиите на Visual Studio Redistributable. (И ако играта не започне од torrent, а потоа се погледне во извештаите на антивирус, тоа може да се отстрани потребната DLL, тоа често се случува со некои модифицирани библиотеки).
- Обично, наместо да се регистрира DLL, се активира локацијата на датотеката во истата папка како и извршна exe датотека која бара оваа библиотека.
На оваа цел, се надевам дека нешто стана појасно отколку што беше.