2010-05-08 2 views
1

Недавно мы выпустили обновление одного из наших приложений с помощью «тестовой» DLL от третьей стороны. Третья сторона не обновляет свои версии сборки в dll, а только в версиях файлов, поэтому несколько приложений могут ссылаться на разные «версии». Тем не менее, GAC по-прежнему позволяет нам сохранять новейшую версию, поскольку она также проверяет версию файла, которая всегда обновляется.Использование installshield для замены DLL с одинаковой версией в GAC

Что случилось, мы не были готовы выпустить эту DLL, но она появилась там на некоторых машинах для клиентов. Я хотел бы вернуть нашу текущую живую версию, но она имеет более старую версию файла (и ту же версию сборки), что и тестовая DLL. У нас есть несколько приложений, ссылающихся на эту DLL, поэтому я не могу просто удалить ее и добавить в новую.

Есть ли способ заменить DLL в GAC? Я использую installshield 2009. Возможно, какие-то пользовательские действия при установке?

ответ

0

Не могли бы вы сделать следующий

  1. Убедитесь в отношении gacutil.exe /lr, что нет никакой ссылки на старую версию DLL
  2. Убедитесь, что есть processorArchitecture информация о старой версии сборки в пакете MSI , (http://community.flexerasoftware.com/showthread.php?t=154839&page=2)
  3. Убедитесь, что во время удаления будет удалена старая версия вашей DLL.

Посмотрите на http://kb.flexerasoftware.com/selfservice/viewContent.do?externalID=Q111094

Смежные вопросы