Regsvr32: Co je to a jak registrovat knihovny DLL

Jak zaregistrovat a zrušit registraci souboru DLL pomocí programu Regsvr32.exe

Regsvr32 je nástroj příkazového řádku v systému Windows, který slouží jako registru serveru Microsoft . Používá se k registraci a zrušení registrace objektů OLE (Linking and Embedding), jako jsou soubory .DLL a soubory ActiveX Control .OCX.

Když regsvr32 zaregistruje soubor DLL, informace o přidružených programových souborech jsou přidány do registru systému Windows . Jsou to odkazy, které mohou mít jiné programy v registru, aby pochopili, kde jsou data programu a jak s nimi pracovat.

Možná budete muset zaregistrovat soubor DLL, pokud se v počítači zobrazí chyba DLL . Vysvětlujeme, jak to udělat níže.

Jak se zaregistrovat a odhlásit soubor DLL

Pokud jsou odkazy v registru systému Windows, které odkazují na soubor DLL, nějak odstraněny nebo poškozeny, programy, které je třeba použít, pravděpodobně přestanou pracovat. Je-li tato souvislost s registrem narušena, měl by být registrován soubor DLL.

Registrace souboru DLL se obvykle provádí přeinstalací programu, který jej byl zaregistrován. Někdy však budete pravděpodobně muset zaregistrovat soubor DLL ručně pomocí příkazového řádku .

Tip: Pokud si nejste jisti, jak jej najít, postupujte podle pokynů na příkaz Otevřít příkazový řádek .

To je správný způsob, jak strukturovat příkaz regsvr32:

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

Například byste zadali tento první příkaz pro registraci souboru DLL s názvem myfile.dll nebo druhý, který by jej zrušil:

regsvr32 myfile.dll regsvr32 / u myfile.dll

Další parametry, které můžete použít s nástrojem regsvr32, naleznete na stránce společnosti Regsvr32 společnosti Microsoft.

Poznámka: Ne všechny registry DLL lze zaregistrovat pouze zadáním výše uvedeného příkazu do příkazového řádku. Možná budete muset nejprve zavřít službu nebo program, který používá soubor.

Jak opravit běžné chyby Regsvr32

Zde je jedna chyba, která se může zobrazit při pokusu o registraci souboru DLL:

Modul byl načten, ale volání DllRegisterServer se nezdařilo s kódem chyby 0x80070005.

Toto je obvykle problém s povolením. Pokud spuštěním zvýšeného příkazového řádku stále nedovolíte zaregistrovat soubor DLL, může být samotný soubor zablokován. Zkontrolujte sekci Zabezpečení na kartě Obecné v okně Vlastnosti souboru.

Dalším možným problémem může být, že nemáte správná oprávnění k použití tohoto souboru.

Podobné chybové hlášení je formulováno jako níže. Tato chyba obvykle znamená, že knihovna DLL není používána jako COM DLL pro libovolnou aplikaci v počítači, což znamená, že není třeba ji registrovat.

Modul byl načten, ale vstupní bod DllRegisterServer nebyl nalezen.

Zde je další chybová zpráva regsvr32:

Modul se nezdařil. Ujistěte se, že binární soubor je uložen na zadané cestě nebo jej ladíte, abyste si ověřili problémy s binárními nebo závislými soubory DLL.

Tato konkrétní chyba může být způsobena chybějící závislostí, v takovém případě můžete použít nástroj Dependency Walker, abyste viděli seznam všech závislostí, které vyžaduje soubor DLL - může se stát, že potřebujete mít k dispozici knihovnu DLL správně zaregistrovat.

Také se ujistěte, že cesta k souboru DLL je napsána správně. Syntaxe příkazu je velmi důležitá; může dojít k chybě, pokud není zadána správně. Některé soubory DLL pravděpodobně musí mít své umístění obklopené v uvozovkách jako "C: \ Users \ Admin User \ Programs \ myfile.dll".

Viz část "Chybová hlášení registru Regsvr32" tohoto článku podpory společnosti Microsoft pro některé další chybové zprávy a vysvětlení toho, co je způsobuje.

Kde je uložen Regsvr32.exe?

32bitové verze systému Windows (XP a novější) přidá nástroj Microsoft Register Server do složky % systemroot% \ System32 \ při prvním instalaci systému Windows.

64bitové verze systému Windows ukládají soubor regsvr32.exe nejen tam, ale také v % systemroot% \ SysWoW64 \.