13

这让我发疯了。

我注册了一个 DLL (COM) 使用

regsvr32 blabla.dll

同时,我从磁盘中手动删除了这个 DLL。

如何取消注册此 dll?我知道 CLSID。

编辑:

显然我需要从注册表中删除它。

我应该在注册表中删除什么?

4

4 回答 4

16

不幸的是,注销代码存在于 DLL 中,因此regsvr32 /u blabla.dll不起作用;您需要使用regedit. 我相信注册信息通常位于HKEY_CLASSES_ROOT\CLSID\{YOUR-CLSID}.

于 2009-11-28T21:04:59.513 回答
2

解决此问题的另一种方法是将 dll 放回去并取消注册。然后你可以删除它。

我们经常在注册路径没有 dll 的带有 midas.dll 的客户地方有这个。

于 2019-04-08T22:46:27.850 回答
0

您可能还需要删除位于 HKEY_CLASSES_ROOT 中的 prog.id。

于 2009-11-28T21:32:41.047 回答
0

取消注册 dll 的方式与注册它的方式相同,只是添加了 /u(卸载)标志。

regsvr32 /u blabla.dll

当然,如果您不再拥有该 dll,这将无法正常工作,但如果您仍有一份副本或可以获得一份,这比手动编辑注册表更容易。

于 2021-11-18T22:25:36.380 回答