1

我们最近使用来自第三方的“测试”DLL 对我们的一个应用程序进行了更新。第三方不会在 dll 上更新他们的程序集版本,只会更新文件版本,因此多个应用程序可以引用它的不同“版本”。但是,GAC 仍然允许我们保留最新版本,因为它还会检查始终更新的文件版本。

发生的事情是我们还没有准备好发布这个 DLL,但它已经在一些客户机器上发布了。我想把我们当前的实时版本放回去,但它有一个旧的文件版本(和相同的程序集版本)作为测试 DLL。我们有多个引用这个 DLL 的应用程序,所以我不能简单地删除它并放入新的。

有没有办法替换 GAC 中的 DLL?我正在使用 installshield 2009。也许安装时有某种自定义操作?

4

1 回答 1

0

Could you do following

  1. Verify with respect of gacutil.exe /lr that there are no reference to the old version of the DLL
  2. Verify that there are processorArchitecture information about the old version of the assembly in MSI package. (see http://community.flexerasoftware.com/showthread.php?t=154839&page=2)
  3. Verify that old version of your DLL will be removed during deinstallation.

Look at http://kb.flexerasoftware.com/selfservice/viewContent.do?externalID=Q111094

于 2010-05-08T20:55:17.997 回答