Kako registrirati DLL u sustavu Windows

Korisnici pitaju kako registrirati dll datoteku u sustavu Windows 7 i 8. Obično, nakon što se susreću s pogreškama poput "Program se ne može pokrenuti, jer potrebni dll nije na računalu". O ovom i razgovoru.

Zapravo, registracija knjižnice u sustavu nije tako težak zadatak (pokazat ću čak tri varijacije jedne metode), u stvari, samo je jedan korak potreban. Jedini uvjet je da imate Windows administratorska prava.

Međutim, postoje neke nijanse - na primjer, čak i uspješna registracija DLL nije nužno vas spasiti od pogreške „nije pronađen na računalu”, a pojava regsvr32 pogreške s porukom da uređaj nije kompatibilan s verzijom sustava Windows na računalu, ili točke DllRegisterServer unos nije pronađen, To ne znači da radite nešto loše (objasnit ću to na kraju članka).

Tri načina registracije DLL-a u OS-u

Opisujući sljedeće korake, pretpostavljam da ste pronašli gdje trebate kopirati knjižnicu, a DLL je već u mapi System32 ili SysWOW64 (i možda negdje drugdje, ako bi trebao biti tamo).

Napomena: Sljedeće opisuje kako se registrirati DLL pomoću regsvr32.exe, ali skrenuti pozornost na činjenicu da ako imate 64-bitni sustav, onda imate dva regsvr32.exe - jedan u mapu C: \ Windows \ SysWOW64 drugi je C: \ Windows \ System32.A to su različite datoteke, s 64-bitnom koja se nalazi u mapi System32. Preporučujem da koristite cijeli put do regsvr32.exe na svakom od načina, a ne samo naziv datoteke, kao što sam pokazao u primjerima.

Prva metoda je opisana na Internetu češće od drugih i sastoji se od sljedećeg:

  • Pritisnite tipku Windows + R ili na izborniku Start u sustavu Windows 7 odaberite stavku "Run" (ako ste, naravno, omogućili njegov prikaz).
  • ući regsvr32.exe path_to_file_DLL
  • Kliknite U redu ili Unesi.

Nakon toga, ako sve bude dobro, trebali biste vidjeti poruku da je knjižnica uspješno registrirana. No, s velikom vjerojatnošću vidjet ćete još jednu poruku - modul je učitan, ali ulazna točka DllRegisterServer nije pronađena i valja provjeriti je li vaš DLL ispravna datoteka (o tome ću kasnije pisati, kao što sam već rekao).

Drugi je način pokretanje naredbenog retka kao administratora i unos iste naredbe iz prethodne stavke.

  • Pokrenite naredbeni redak kao administrator. U sustavu Windows 8 možete pritisnuti tipke Win + X, a zatim odabrati željenu stavku izbornika. U sustavu Windows 7 možete pronaći naredbeni redak u izborniku Start, desnom tipkom miša kliknite na njega i odaberite "Pokreni kao administrator".
  • Unesite naredbu regsvr32.exe path_to_library_DLL (možete vidjeti primjer u snimci zaslona).

Ponovno, vjerojatno je da nećete moći registrirati DLL u sustavu.

A posljednja metoda, koja može biti korisna u nekim slučajevima:

  • Desnom tipkom miša kliknite DLL koji želite registrirati i odaberite stavku izbornika "Open with".
  • Kliknite "Browse" i pronađite datoteku regsvr32.exe u mapi Windows / System32 ili Windows / SysWow64, otvorite ga pomoću DLL-a.

Bit svih opisanih načina da se registrira DLL u sustavu je isti, samo nekoliko različitih načina za pokretanje iste naredbe - što je prikladno za nekoga. A sada o tome zašto nemate ništa.

Zašto se DLL ne može registrirati?

Dakle, nemate DLL datoteku, zbog onoga što vidite pogrešku prilikom pokretanja igre ili programa, preuzeli ste tu datoteku s interneta i pokušajte se registrirati, ali ulazna točka DllRegisterServer ili modul nisu kompatibilni s trenutnom verzijom sustava Windows i možda nešto drugo, to jest, registraciju DLL-a je nemoguće.

Zašto se to događa (dalje će biti o tome kako to popraviti):

  • Nisu sve datoteke DLL dizajnirane da budu registrirane. Da bi se to moglo registrirati na taj način, mora imati podršku za samu funkciju DllRegisterServer.Ponekad je pogreška također uzrokovana činjenicom da je knjižnica već registrirana.
  • Neke web-lokacije koje nude preuzimanje DLL-ova sadrže, u stvari, lažne datoteke s imenom koje tražite i koje se ne mogu registrirati, jer u stvarnosti to nije knjižnica.

A sada kako to popraviti:

  • Ako ste programer i registrirajte svoj DLL, pokušajte regasm.exe
  • Ako ste korisnik i ne započnete s porukom da DLL nije na vašem računalu - pretražite internet za koju vrstu datoteke, a ne gdje ga preuzeti. Znajući to, obično možete preuzeti službeni program za instalaciju koji instalira izvorne biblioteke i registrira ih u sustavu - na primjer, za sve datoteke s imenom počevši od d3d, samo stavite DirectX s službenog Microsoftovog web mjesta, za msvc, jednu od verzija Visual Studio Redistributable. (A ako igra ne započne s bujicom, a zatim pogledajte izvješća antivirusnog programa, može ukloniti potrebni DLL, često se događa s nekim modificiranim knjižnicama).
  • Obično, umjesto da se registrira DLL, pokreće se lokacija datoteke u istoj mapi kao izvršna exe datoteka koja zahtijeva ovu knjižnicu.

U tom smislu, nadam se da je nešto postalo jasnije nego što je bilo.