Regsvr32: Mi az & DLL-ek regisztrálása

Tartalomjegyzék:

Regsvr32: Mi az & DLL-ek regisztrálása
Regsvr32: Mi az & DLL-ek regisztrálása
Anonim

Amit tudni kell

  • A myfile.dll DLL-fájl regisztrálásához írja be a regsvr32 myfile.dll parancsot, a regisztráció törléséhez pedig írja be az r egsvr32 /u myfile.dll parancsot.a parancssorba.
  • Ha hibaüzenetet kap egy DLL-fájl regisztrálásakor, előfordulhat, hogy nem rendelkezik a megfelelő engedélyekkel, vagy a fájl blokkolva van.
  • Egyéb hibák a hiányzó függőség következményei lehetnek; ha igen, használja a Dependency Walkert a DLL-fájl által igényelt összes függőség megtekintéséhez.

Ez a cikk bemutatja, hogyan kell használni a regsvr32 parancssori eszközt a Windows rendszerben, és hogyan javíthat ki néhány regsvr32 hibát. A Regsvr32 az Object Linking and Embedding (OLE) vezérlők, például a DLL-fájlok és az ActiveX-vezérlők regisztrálására és regisztrációjának törlésére szolgál. OCX fájlok. Lehet, hogy regisztrálnia kell egy DLL fájlt, ha DLL hibát lát a számítógépén.

DLL-fájl regisztrálása és regisztrációjának megszüntetése

Ha a Windows rendszerleíró adatbázisában a DLL-fájlra hivatkozó hivatkozásokat valamilyen módon eltávolítják vagy megsérülnek, előfordulhat, hogy az adott DLL-fájlt használó programok leállnak. Amikor a rendszerleíró adatbázissal való kapcsolat megszakad, akkor kell DLL-fájlt regisztrálni.

A DLL fájl regisztrálása általában az azt először regisztráló program újratelepítésével történik. Előfordulhat azonban, hogy saját kezűleg kell regisztrálnia a DLL fájlt a Parancssoron keresztül.

Tekintse meg oktatóanyagunkat a Parancssor megnyitásáról, ha nem tudja, hogyan találja meg.

Ez a helyes módja a regsvr32 parancs felépítésének:


regsvr32 [/u] [/n] [/i[:cmdline]

Például ezt az első parancsot írja be egy myfile.dll nevű DLL-fájl regisztrálásához, vagy a második parancsot a regisztráció törléséhez:


regsvr32 myfile.dll

regsvr32 /u myfile.dll

Image
Image

Nem minden DLL regisztrálható a fenti parancs parancssorba való beírásával. Előfordulhat, hogy először be kell zárnia a fájlt használó szolgáltatást vagy programot.

A gyakori Regsvr32 hibák kijavítása

Íme egy hiba, amelyet DLL fájl regisztrálásakor láthat:


A modul betöltődött, de a DllRegisterServer hívása meghiúsult a 0x80070005 hibakóddal.

Ez jellemzően engedélykérdés. Ha egy emelt szintű parancssor futtatása továbbra sem teszi lehetővé a DLL-fájl regisztrálását, előfordulhat, hogy maga a fájl blokkolva van. Ellenőrizze a Biztonság szakaszt az Általános lapon a fájl Tulajdonságok ablakában.

A másik lehetséges probléma az lehet, hogy nem rendelkezik a megfelelő engedélyekkel a fájl használatához.

Egy hasonló hibaüzenet az alábbihoz hasonlóan van megfogalmazva. Ez a hiba általában azt jelenti, hogy a DLL-t nem használják COM DLL-ként a számítógép egyetlen alkalmazásához sem, ami azt jelenti, hogy nem kell regisztrálni.


A modul betöltve, de a belépési pont DllRegisterServer nem található.

Itt van egy másik regsvr32 hibaüzenet:


A modul betöltése nem sikerült. Győződjön meg arról, hogy a bináris fájl a megadott elérési úton van tárolva, vagy végezzen hibakeresést a bináris vagy függő. DLL fájlokkal kapcsolatos problémák ellenőrzéséhez. A megadott modul nem található.

Image
Image

Az adott hiba egy hiányzó függőség miatt lehet, ebben az esetben a Dependency Walker segítségével megtekintheti a DLL-fájlhoz szükséges összes függőséget, mivel előfordulhat, hogy hiányzik egy, amelyre szüksége van. hogy a DLL megfelelően regisztráljon.

Győződjön meg arról is, hogy a DLL fájl elérési útja helyesen van írva. A parancs szintaxisa nagyon fontos; hiba léphet fel, ha helytelenül van megadva.

Előfordulhat, hogy egyes DLL-fájlok helyét idézőjelbe kell tenni:


"C:\Users\Admin User\Programs\myfile.dll"

Hol található a Regsvr32.exe?

A Windows

32 bites verziói (XP és újabb) hozzáadják a Microsoft Register Server eszközt ehhez a mappához a Windows első telepítésekor: %systemroot%\System32\.

A Windows 64 bites verziói nem csak ott tárolják a regsvr32.exe fájlt, hanem itt is: %systemroot%\SysWoW64\.

Ajánlott: