Otvoren
Zatvoriti

Nije moguće registrirati modul. Windows Registrira datoteke s ekstenzijama *.dll i *.ocx. Nekoliko načina za registraciju dinamičke knjižnice

2. Nakon što ste kopirali biblioteku pritisnite kombinaciju WIN+R i zalijepite u prozor koji se otvori:

regsvr32<имя библиотеки>

Na primjer regsvr32 mfc100

I pritisnite Enter

Ako se pojavi ova greška,

zatim pokušajte pritisnuti istu kombinaciju tipki i umetnuti sljedeće:

%WINDIR%\SysWOW64\regsvr32<имя библиотеки>

Na primjer %WINDIR%\SysWOW64\regsvr32 mfc100

Ako je knjižnica ispravna, registracija će biti uspješna i vidjet ćete sljedeću poruku

p.s. Ako trebate registrirati biblioteku koja se nalazi u drugom direktoriju (ne direktoriju sustava), tada morate navesti punu stazu do biblioteke.

Na primjer regsvr32


1. Kopirajte preuzetu biblioteku u željeni direktorij sustava. (ovo je ili system32 ili SysWOW64)*

* U koji direktorij kopirati biblioteke ovisi o bitnoj dubini aplikacije. Ako ne znate točno u koju mapu kopirati, kopirajte u oba J

2. Preuzimanje arhiva na dnu posta, raspakirajte, pokrenite datoteku reg.bat s administratorskim pravima, odaberite bitnu dubinu koju trebate, pritisnite Enter i umetnite naziv knjižnice, koji ste kopirali u direktorij sustava. Sve bi trebalo proći dobro i vidjet ćete ovu poruku.

Ako vidite takvu poruku

Zatim odaberite drugu veličinu bita i pokušajte se ponovno registrirati. Sve bi trebalo dobro proći.

p.s. Ako trebate registrirati biblioteku koja se nalazi u drugom direktoriju (ne direktoriju sustava), tada morate navesti punu stazu do biblioteke u nazivu biblioteke.

Na primjer C:\Programske datoteke\1Cv77\BIN\V7PLUS.dll

Model višekomponentnih objekata ( C komponenta O subjekt M odel - COM) glavno je sredstvo interakcije između programa bilo koje vrste: knjižnica, aplikacija, sistemskog softvera itd. i definira standardni mehanizam kojim jedan softver (poslužitelj) pruža svoje usluge drugom (klijentu), što je osigurano korištenjem određenih komunikacijskih protokola između njih (između klijenta i poslužitelja). Poslužitelj može biti biblioteka dinamičkog povezivanja (DLL) koja se učitava dok aplikacija radi ili zasebni neovisni proces koji može biti komponenta aplikacije ili sistemskog programa ili čak proces koji se izvodi na drugom računalu. Da bi se pronašao poslužitelj koji klijent treba, koriste se posebne informacije iz Windows registra, koje se generiraju kada registracija poslužitelja u sustavu, najčešće u obliku dinamički učitavanog modula DLL knjižnice. Registracija je neophodna jer programi ne rade sa samim DLL, OCX, ACX, EXE datotekama, već s objektima koji predstavljaju određeni skup programskih sučelja. Sljedeći ključevi registra koriste se za registraciju DLL-ova:

HKLM\SOFTWARE\Classes\CLSID- prilikom registracije objekata COM knjižnice za sve korisnike sustava;

HKCU\SOFTWARE\Classes\CLSID- pri registraciji objekata COM knjižnice samo za trenutnog korisnika;

HKLM\SOFTWARE\Wow6432Node\Classes\CLSID- za registraciju 32-bitnih DLL-ova u 64-bitnom Windows OS-u;

Prilikom registracije, ključ s imenom ekvivalentnim globalno jedinstvenom identifikatoru stvara se u navedenom odjeljku registra vodič registrirani objekt. GUID, u odnosu na COM, je identifikator klase. Za razlikovanje identifikatora klase od drugih identifikatora, oni koriste podključ registra koji se zove CLSID. GUID je 128-bitna heksadecimalna vrijednost u vitičastim zagradama:

(23170F69-40C1-278A-1000-000100020000

Prilikom registracije u registru stvara se podključ s nazivom koji odgovara GUID-u, koji sadrži informacije o putu i nazivu izvršne datoteke, njezinoj verziji, vremenu registracije, informacijama o programeru i drugim parametrima koji određuju specifična svojstva registrirani objekt. Brisanje ili oštećenje registracijskih podataka uzrokuje da registrirana komponenta sustava ili aplikacijski program postane neoperabilan, obično praćen porukom o pogrešci pretraživanja DLL-a i upitom za ponovnu instalaciju problematičnog softvera. Umjesto ponovne instalacije, sasvim je moguće proći ponovnom registracijom oštećenog objekta pomoću uslužnog programa regsvr32.exe dostupan u svim verzijama Windows obitelji operativnih sustava.

Korisnost regsvr32.exe je standardni program naredbenog retka za registraciju i deregistraciju OLE kontrola, ActiveX kontrola i DLL-ova u registru sustava Windows. Na 64-bitnim verzijama sustava Windows postoje dvije verzije datoteke regsv32.exe:

64-bitna verzija u katalogu %systemroot%\System32(obično C:\Windows\System32)

32-bitna verzija u katalogu %systemroot%\SysWoW64(obično C:\Windows\SysWoW64)

Uslužni program zahtijeva povišene privilegije za rad, tako da se prozor naredbenog retka mora otvoriti s administratorskim pravima ("Pokreni kao administrator").

Na početku regsvr32.exe bez parametara naredbenog retka ili kada se pokrene s netočnim parametrima, prikazuje se savjet:

REGSVR32 format naredbenog retka:

Regsvr32 ] DLL datoteka

/u- - poziva DllUnInstall, poništava registraciju poslužitelja

/i- poziva DllInstall, prosljeđujući mu opcijski command_string kao parametar;

/n- ne poziva DllRegisterServer; može se koristiti s prekidačem /I;

/s– “tihi” način rada; okviri s porukama se ne prikazuju;

Primjeri korištenja regsvr32.exe:

regsvr32 /u "C:\Programske datoteke\7-Zip\7-zip32.dll"- odjavi navedeni DLL. Ako je otkazivanje uspješno, prikazuje se sljedeća poruka:

Za suzbijanje izlaza poruke upotrijebite parametar /s:

regsvr32 /u /s "C:\Programske datoteke\7-Zip\7-zip.dll"

Kao rezultat izvršavanja ove naredbe, stavka arhiviranja 7-Zip nestat će iz kontekstnog izbornika Windows Explorera desnim klikom. Da biste ga vratili, morate registrirati 7-zip.dll naredbom:

regsvr32 "C:\Programske datoteke\7-Zip\7-zip.dll"

Ne smijete zaboraviti bitnu dubinu registriranih objekata u 64-bitnim verzijama OS-a. Ako je potrebno registrirati 32-bitni objekt, morate eksplicitno navesti put za 32-bitno izdanje uslužnog programa regsvr32:

%SystemRoot%\syswow64\regsvr32.exe

Ili bez korištenja varijabli okruženja:

C:\Windows\System32\regsvr32.exe

Kao dodatni softverski alat za upravljanje registracijom COM objekata, vrlo je prikladno koristiti besplatni uslužni program tvrtke Nirsoft RegDLLView.exe. Program ne zahtijeva instalaciju na sustav, male je veličine i omogućuje vam da:

Primite prikladan popis svih objekata registriranih u sustavu.

Registrirajte ili poništite registraciju odabranih objekata.

Stvorite reg datoteku da izvršite poništavanje registracije jednog ili više DLL-ova.

Registrirajte ili ponovno registrirajte navedenu datoteku.

Osim toga, moguće je provjeriti digitalne potpise izvršnih datoteka registriranih objekata, pregledati ili promijeniti njihova svojstva, kao i pokrenuti uređivač registra s informacijama prikazanim za odabrani GUID kroz stavku kontekstnog izbornika "Otvori u Regeditu", pozvanu desnom tipkom miša.

Instaliranje igre ili teške aplikacije uključuje automatsku instalaciju i registraciju potrebnih DLL-ova u operacijskom sustavu Windows. DLL-ovi su dinamičke biblioteke kojima se više aplikacija može pristupiti više puta. Ako dođe do pogreške kada igra ili program pokuša pristupiti određenom DLL-u, korisnik će vidjeti poruku "dllregisterserver ulazna točka nije pronađena" ili "ne može se pokrenuti, nedostaje .dll datoteka." Ove i druge pogreške koje ukazuju na probleme prilikom pristupa dinamičkoj biblioteci mogu se riješiti ako samostalno registrirate potrebnu DLL datoteku u sustavu Windows.

Zašto dolazi do pogreške prilikom pristupa DLL-u?

DLL-ovi se dodaju operativnom sustavu kada se Windows ažurira i kada se instaliraju aplikacije. Na temelju toga možemo identificirati sljedeće glavne razloge zašto se pojavljuje pogreška koja ukazuje na nedostatak ili problem s DLL datotekom:

  • DLL nije instaliran. Za to mogu postojati dva razloga - Windows nije ažuriran na trenutnu verziju, a biblioteka dolazi s jednim od najnovijih ažuriranja ili igra/aplikacija tijekom instalacije iz nekog razloga nije instalirala i registrirala nove DLL-ove.
    Bilješka: Najčešće su svi potrebni DLL-ovi uključeni u instalacijske datoteke aplikacije, a programeri ne očekuju da su potrebne komponente već instalirane na računalu.
  • Oštećenje DLL-ova. Ovaj se problem najčešće javlja ako su DLL-ovi oštećeni virusnim softverom ili nepažljivim radnjama korisnika, na primjer, unošenjem promjena u registar koje su dovele do oštećenja dinamičkih biblioteka.

Većina DLL-ova instalirana je na računalu zajedno s DirectX-om, pa ako se prilikom instaliranja igre ili aplikacije od vas zatraži ažuriranje/instalacija DirectX-a, ne trebate ga odbiti jer u suprotnom postoji veliki rizik od pogreške „ne može se pokrenut, datoteka .dll nedostaje."

Kako registrirati DLL u sustavu Windows

Ako iz nekog razloga Windows nema DLL potreban za pokretanje igara i aplikacija, korisnik ga može sam registrirati. To se može učiniti na dva načina, prvo preuzimanjem potrebnog DLL-a na računalo.

Registriranje DLL-ova pomoću naredbenog retka

Da biste registrirali DLL koji postoji na vašem računalu putem naredbenog retka, učinite sljedeće:


Registriranje DLL-a pomoću Run Line

Registriranje DLL-a kroz redak "Pokreni" praktički se ne razlikuje od radnji s naredbenim redkom. Korisnik treba:


Što učiniti ako ne možete registrirati DLL

Moguće je da će Windows izdati pogrešku kada odgovori na naredbu za registraciju biblioteke, pokazujući da je modul učitan, ali ulazna točka DllRegisterserver nije pronađena. Vjerojatno postoje druge varijacije sličnih pogrešaka koje sprječavaju registriranje DLL-a. Do takvih grešaka dolazi iz sljedećih razloga:

Ako naiđete na pogreške prilikom pokušaja registracije DLL-a, prvi korak je pokušaj preuzimanja službene komponente od dobavljača kako biste eliminirali mogućnost lažne datoteke. Da biste to učinili, morat ćete upotrijebiti tražilicu i pronaći kojoj komponenti sustava pripada problematični DLL.

U rijetkim situacijama može doći do problema s registracijom DLL-a ako se ne nalazi u istoj mapi kao izvršna datoteka komponente ili aplikacije.exe. U tom slučaju trebate premjestiti biblioteku u mapu s izvršnom datotekom i pokušati je ponovno registrirati.

Provjerite kako ova metoda funkcionira. Da biste registrirali DLL datoteku, možete koristiti naredbu "regsvr" i naziv DLL datoteke (ako datoteka podržava ovu naredbu). Ovo će stvoriti put od Windows registra do DLL datoteke, olakšavajući sustavu pronalaženje i korištenje datoteke.

  • Obično se ova metoda koristi za registraciju DLL datoteka koje pripadaju programima trećih strana i koje izravno komuniciraju s uslužnim programima sustava (na primjer, naredbeni redak).

Shvatite bit pogreške "ulazne točke". Ako je DLL datoteka već registrirana, ne podržava naredbu "regsvr" ili vam njen kod ne dopušta povezivanje s registrom sustava Windows, dobit ćete poruku o pogrešci "Modul je učitan, ali ulazna točka DllRegisterServer nije pronađen." učitano, ali DllRegisterServer ulazna točka nije pronađena). Ako se ova poruka pojavi na vašem ekranu, nećete moći registrirati DLL datoteku.

  • Pogreška "entry point" nije toliki problem koliko je to potvrda da se DLL datoteka ne mora registrirati.
  • Pronađite DLL datoteku koju želite registrirati. Idite u mapu sa željenom DLL datotekom i pronađite je.

    • Ako je DLL datoteka za instalirani program, otvorite mapu programa (na primjer, C:\Program Files\[naziv programa]).
  • Otvorite svojstva DLL datoteke. Desnom tipkom miša kliknite DLL datoteku i odaberite Svojstva iz izbornika. Otvorit će se skočni prozor.

    Pronađite naziv DLL datoteke. U tekstualnom okviru na vrhu prozora Svojstva pronaći ćete puni naziv datoteke.

    • Većina DLL datoteka ima složena imena, pa ostavite prozor Svojstva otvoren kako biste kasnije kopirali naziv.
  • Kopirajte put do DLL datoteke. Držite lijevu tipku miša i povucite duž teksta koji se pojavljuje u retku Lokacija, a zatim pritisnite Ctrl + C da biste kopirali put do DLL datoteke.

    Pronađite naredbeni redak. Upišite naredbeni redak u traku za pretraživanje izbornika Start. Ikona naredbenog retka pojavit će se na vrhu izbornika Start.

    Otvorite naredbeni redak kao administrator. Za ovo:

  • Idite u direktorij s DLL datotekom. Upišite cd , pritisnite razmaknicu, pritisnite Ctrl + V da zalijepite put do DLL datoteke, a zatim pritisnite ↵Uđi.

    • Na primjer, ako se DLL datoteka nalazi u mapi "SysWOW64", koja se nalazi u mapi "Windows", naredba bi izgledala ovako: cd C:\Windows\SysWOW64
  • Unesite naredbu "regsvr" i naziv DLL datoteke. Upišite regsvr32 , pritisnite razmaknicu, unesite naziv DLL datoteke (zajedno s nastavkom .dll) i pritisnite ↵Uđi. Ako se DLL datoteka može registrirati, na zaslonu će se pojaviti potvrda registracije.

    • Na primjer, ako je naziv DLL datoteke "usbperf.dll", naredba će izgledati ovako: regsvr32 usbperf.dll
    • Da biste kopirali naziv DLL datoteke, ponovno otvorite mapu koja sadrži DLL datoteku (otvara se prozor Svojstva), označite naziv datoteke i pritisnite Ctrl + C. Zatim zalijepite naziv u naredbeni redak - da biste to učinili, pritisnite Ctrl + V.
    • Ako je DLL datoteka već registrirana ili se ne može registrirati, prikazat će se pogreška "ulazne točke" umjesto potvrde registracije.
  • Korisnici pitaju kako registrirati dll datoteku u sustavima Windows 7 i 8. Obično nakon što naiđu na pogreške poput "Program se ne može pokrenuti jer potrebna dll nije na računalu." Razgovarajmo o ovome.

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

    Međutim, postoje neke nijanse - na primjer, čak i uspješna registracija DLL-a ne mora vas spasiti od pogreške "knjižnica nije na računalu" i pojave pogreške RegSvr32 s porukom da modul nije kompatibilan s verzijom Windowsa na ovom računalu ili ulazna točka DLLRegisterServer nije pronađena ne znači da radite nešto pogrešno (što to znači objasnit ću na kraju članka).

    Tri načina za registraciju DLL-a u OS-u

    U opisivanju daljnjih koraka, pretpostavljam da ste pronašli gdje trebate kopirati svoju biblioteku i da je DLL već u mapi System32 ili SysWOW64 (a možda i negdje drugdje, ako bi trebao biti tamo).

    Napomena: u nastavku ćemo opisati kako registrirati DLL biblioteku pomoću regsvr32.exe, međutim, imajte na umu 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, a 64-bitna se nalazi u mapi System32. Preporučujem da u svakoj metodi koristite puni put do regsvr32.exe, a ne samo naziv datoteke, kao što je prikazano u mojim primjerima.

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

      Pritisnite tipku Windows + R ili idite na izbornik Start Windows 7 odaberite “Run” (naravno, ako ste ga omogućili). Unesite regsvr32.exe path_to_dll_file Pritisnite OK ili Enter.

    Nakon toga, ako je sve prošlo u redu, trebali biste vidjeti poruku da je knjižnica uspješno registrirana. Ali, s velikom vjerojatnošću, vidjet ćete drugu poruku - Modul je učitan, ali ulazna točka DllRegisterServer nije pronađena i vrijedi provjeriti je li vaš DLL ispravna datoteka (kao što sam već rekao, o tome ću pisati kasnije ).

    Drugi način je pokretanje naredbenog retka kao administrator i unos iste naredbe iz prethodnog paragrafa.

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

    Opet, vrlo je vjerojatno da nećete moći registrirati DLL na sustavu.

    I posljednja metoda, koja također može biti korisna u nekim slučajevima:

      Desnom tipkom miša kliknite na DLL koji želite registrirati i odaberite stavku izbornika "Otvori s" Kliknite "Pregledaj" i pronađite datoteku regsvr32.exe u mapi Windows/System32 ili Windows/SysWow64, otvorite DLL pomoću nje.

    Bit svih opisanih metoda za registraciju DLL-a u sustavu je ista, samo malo različiti načini pokretanja iste naredbe - kako god je zgodnije. A sada o tome zašto vam ništa ne polazi za rukom.

    Zašto ne mogu registrirati DLL?

    Responsive2(width:300px;height:300px)@media(min-width: 500px)(.responsive2(width:336px;height:280px))

    Dakle, nedostaje vam neka DLL datoteka, zbog čega kada pokrenete igru ​​ili vidite grešku, preuzeli ste ovu datoteku s interneta i pokušavate se registrirati, ali ili DllRegisterServer ulazna točka ili modul nije kompatibilan s trenutna verzija Windowsa, ili možda i nešto drugo, odnosno DLL registracija je nemoguća.

      Nisu sve DLL datoteke dizajnirane za registriranje. Da bi se mogao registrirati na ovaj način, mora imati podršku za istu funkciju DllRegisterServer. Ponekad je pogreška uzrokovana i činjenicom da je knjižnica već registrirana. Neka mjesta koja nude preuzimanje DLL-ova zapravo sadrže lažne datoteke s imenom koje tražite i ne mogu se registrirati jer zapravo nisu biblioteka.

    A sada kako to popraviti:

      Ako ste programer i registrirate svoj DLL, pokušajte regasm. exeAko ste korisnik i nešto vam se ne pokreće uz poruku da DLL nedostaje Računalo- gledajte na internetu kakav je to fajl, a ne gdje da ga skinete. Obično, znajući to, možete preuzeti službeni instalacijski program koji će instalirati originalne biblioteke i registrirati ih u sustavu - na primjer, za sve datoteke čiji naziv počinje s d3d, dovoljno je instalirati DirectX sa službene web stranice, za msvc - jedna od verzija Visual Studio Redistributable. (A ako se igra s torrenta ne pokrene, onda pogledajte antivirusna izvješća; možda je izbrisao potrebne DLL-ove, to se često događa s nekim modificiranim bibliotekama, umjesto da registrirate DLL, stavite datoteku u radi ista mapa kao i izvršna datoteka koja zahtijeva ovu biblioteku.

    Ovim zaključujem, nadam se da je nešto postalo jasnije nego što je bilo.