Korisnici pitaju kako registrirati dll datoteku u sustavima Windows 7 i 8. Obično nakon što naiđu na pogreške poput "Pokretanje programa je nemoguće jer potrebni dll nije dostupan na računalu". Razgovaraćemo o tome.
U stvari, registracija biblioteke u sustavu nije tako težak zadatak (pokazat ću čak tri varijacije jedne metode) - u stvari je potreban samo jedan korak. Jedini preduvjet je da imate Windows administrativna prava.
Međutim, postoje neke nijanse - na primjer, čak i uspješna DLL registracija ne mora vas nužno spasiti od pogreške "knjižnica nije na računaru", a pojavljuje se pogreška RegSvr32 s porukom da modul nije kompatibilan sa verzijom Windows na ovom računalu ili da ulazna točka DLLRegisterServer nije pronađena, To ne znači da radite nešto pogrešno (objasnit ću vam šta će to biti objašnjeno na kraju članka).
Tri načina za registraciju DLL-a u OS-u
Opisujući sljedeće korake, pretpostavljam da ste pronašli mjesto gdje želite kopirati svoju biblioteku, a DLL se već nalazi u mapi System32 ili SysWOW64 (i po mogućnosti negdje drugdje ako bi trebala biti tamo).
Napomena: u nastavku ćemo opisati kako registrirati DLL pomoću regsvr32.exe, no skrećem vam pažnju na činjenicu da ako imate 64-bitni sustav, tada imate dva regsvr32.exe - jedan u mapi C: Windows SysWOW64 drugi je C: Windows System32. A to su različite datoteke, sa 64-bitnom smeštenom u fascikli System32. Preporučujem uporabu pune putanje do regsvr32.exe u svakoj od metoda, a ne samo imena datoteke, kao što sam pokazao u primjerima.
Prva metoda je opisana na Internetu češće od ostalih i sastoji se u sljedećem:
- Pritisnite tipke Windows + R ili odaberite „Pokreni“ iz Windows 7 menija Start (osim, naravno, ako niste uključili ekran).
- Unesite regsvr32.exe path_to_file_dll
- Pritisnite OK ili Enter.
Nakon toga, ako sve pođe dobro, trebali biste vidjeti poruku u kojoj je navedeno da je biblioteka uspješno registrirana. No, s velikom vjerojatnošću ćete vidjeti još jednu poruku - Modul je učitan, ali točka unosa DllRegisterServer nije pronađena i vrijedi provjeriti je li vaša DLL ispravna datoteka (kao što sam rekao, o tome ću pisati kasnije).
Drugi način je pokrenuti naredbenu liniju kao administrator i unijeti istu naredbu iz prethodnog stavka.
- Pokrenite naredbeni redak kao Administrator. U Windows-u 8 možete pritisnuti Win + X, a zatim izabrati željenu stavku menija. U sustavu Windows 7 možete pronaći naredbeni redak u meniju Start, kliknite desnim gumbom miša i odaberite "Pokreni kao administrator".
- Unesite naredbu regsvr32.exe path_to_library_dll (primer koji možete videti na snimku zaslona).
Opet, vjerovatno je da nećete moći da registrirate DLL u sistemu.
I posljednja metoda, koja takođe može biti korisna u nekim slučajevima:
- Desnom tipkom miša kliknite DLL koji želite registrirati i odaberite stavku izbornika "Open with".
- Kliknite "Pregledaj" i pronađite regsvr32.exe datoteku u mapi Windows / System32 ili Windows / SysWow64, otvorite DLL s njom.
Suština svih opisanih načina registracije DLL-a u sistemu je ista, samo nekoliko različitih načina za pokretanje iste naredbe - kome je to zgodnije. A sada o tome zašto ne uspijevate.
Zašto se ne može registrirati DLL
Dakle, nemate nikakvu DLL datoteku. Zbog toga kada pokrenete igru ili program vidite pogrešku, preuzeli ste ovu datoteku s interneta i pokušali se registrirati, ali bilo ulazna točka DllRegisterServer ili modul nije kompatibilan s trenutnom verzijom Windows-a i možda nešto drugo, odnosno, registracija DLL-a nije moguća.
Zašto se to događa (u daljnjem tekstu ćemo reći kako to popraviti):
- Nisu sve DLL datoteke dizajnirane za registraciju. Da bi se ona registrirala na ovaj način, mora imati podršku za istu funkciju DllRegisterServer. Ponekad greška nastaje i činjenicom da je biblioteka već registrirana.
- Neke web lokacije koje nude preuzimanje DLL datoteka sadrže, u stvari, prividne datoteke s imenom koje tražite i ne mogu se registrirati, jer to zapravo nije biblioteka.
A sada o tome kako to popraviti:
- Ako ste programer i registrirate svoj DLL, pokušajte regasm.exe
- Ako ste korisnik, a nešto ne započinje porukom da DLL nedostaje na vašem računalu, potražite na internetu što je datoteka, a ne gdje da je preuzmete. Obično, znajući to, možete preuzeti službeni instalacijski program, koji će instalirati izvorne biblioteke i registrirati ih u sustav - na primjer, za sve datoteke s imenom koje počinju s d3d, samo instalirajte DirectX s službenog Microsoftovog web mjesta, za msvc - jednu od verzija Visual Studio Redistributable. (Ako se neka igra ne započne s bujice, pogledajte antivirusne izvještaje, ona može izbrisati potrebne DLL-ove, to se često događa s nekim modificiranim knjižnicama).
- Obično se umjesto registracije DLL-a pokreće smještanje datoteke u istu mapu s exe izvršnom datotekom koja zahtijeva ovu biblioteku.
Zaključujem ovo, nadam se da je nešto postalo jasnije nego što je bilo.