这让我发疯了。
我注册了一个 DLL (COM) 使用
regsvr32 blabla.dll
同时,我从磁盘中手动删除了这个 DLL。
如何取消注册此 dll?我知道 CLSID。
编辑:
显然我需要从注册表中删除它。
我应该在注册表中删除什么?
不幸的是,注销代码存在于 DLL 中,因此regsvr32 /u blabla.dll
不起作用;您需要使用regedit
. 我相信注册信息通常位于HKEY_CLASSES_ROOT\CLSID\{YOUR-CLSID}
.
解决此问题的另一种方法是将 dll 放回去并取消注册。然后你可以删除它。
我们经常在注册路径没有 dll 的带有 midas.dll 的客户地方有这个。
您可能还需要删除位于 HKEY_CLASSES_ROOT 中的 prog.id。
取消注册 dll 的方式与注册它的方式相同,只是添加了 /u(卸载)标志。
regsvr32 /u blabla.dll
当然,如果您不再拥有该 dll,这将无法正常工作,但如果您仍有一份副本或可以获得一份,这比手动编辑注册表更容易。