2016-05-23 73 views
0

在我的应用程序中,我将第三方程序集安装到GAC中。这些第三方程序集是非常大的dll文件,所以我不想将它们部署到应用程序bin文件夹中,以节省磁盘空间。如何覆盖GAC中的程序集

现在我在这些程序集中的一个上收到补丁程序,其程序集版本与以前完全相同。然后我必须重写GAC中的程序集。我怎样才能做到这一点?

有些用户可能已经安装了我的应用程序的许多不同版本,我不能只是发布一个带有修补程序集的新版本,并要求他们卸载所有这些旧版本,因为这会非常乏味。

我也不能什么,我的想法是,我要重写的确切故障使用GacUtil因为上面提到的,我将不得不部署客户端机器上的组件,不标准的调试工具,如VS 2015

通过命令行或安装程序在GAC中创建组件。我怎样才能做到这一点?

+2

http://stackoverflow.com/a/2611435/17034 –

+0

@HansPassant,任​​何你不把它作为答案的原因? – Graviton

+0

嗯,当然,我已经做到了。如果你不能用它来自己发布问题的答案,那么我将不得不道歉。 –

回答

0

我发现最简单的方法就是将DLL拖放到相应的GAC文件夹中。我已经在Windows 7和Windows 10上进行了测试,并且工作正常!

此外,还可以编写一个包装类,如this answer