取消注册旧版本的.net程序集

时间:2010-10-10 08:19:52

标签: .net regasm

我的程序集中有很多旧的注册版本。

我唯一的dll是最后一个。

如何取消注册程序集的所有版本?

感谢。

编辑:我想在运行时这样做,所以我想要一些像regasm -u ...或其他一些脚本解决方案。

1 个答案:

答案 0 :(得分:3)

编辑:我假设您尝试删除了相关的注册表项。

Regasm可以输出.reg文件。

  

您可以使用/ regfile选项   生成一个包含的.reg文件   注册表项而不是   直接更改到注册表。您   可以更新计算机上的注册表   通过导入.reg文件   注册表编辑器工具(Regedit.exe)。

如果你想在运行时卸载旧版本,可能你可以:

1)为当前程序集创建一个reg文件(供参考)。

2)编写一个应用程序,检查注册表中是否有类似的密钥(可能有不同的版本号?)

3)使用regasm取消注册匹配的程序集。如有必要,请使用regsvr32卸载COM实体。

4)小心地以编程方式删除这些键。

5)注册新装配。

6)gacutil新注册的程序集(如果需要)。

我的COM / Interop有点生疏,所以如果这不起作用请发表评论。