Изменить версию сборки и ссылки (.NET) - PullRequest
2 голосов
/ 20 сентября 2010

У меня есть приложение exe плюс 3 ссылочные сборки в папке. Составлено в VS2010, CLR 4.0.

Я бы хотел изменить версию всех 4 сборок, чтобы они соответствовали (1.0.0.0), а также изменить справочный раздел в каждой из этих сборок, чтобы соответствовать новому номеру версии.

Возможно ли это после того, как приложение уже было собрано вне IDE?

РЕДАКТИРОВАТЬ:

Вот сценарий: наши библиотеки часто устанавливаются в GAC с определенной версией. Версия увеличивается только при выпуске коммерческих продуктов. У нас есть много инструментов для самостоятельной разработки, которые используют некоторые из тех библиотек, которые установлены в GAC. Инструменты создаются в определенный момент и не перестраиваются при изменении кода. CLR предпочитает загружать сборку из GAC, хотя вместо локальных сборок очень часто наши инструменты не используют сборки, из которых они были собраны. Это огромная проблема, и я не понимаю, как ее можно решить иначе.

Ответы [ 3 ]

2 голосов
/ 20 сентября 2010

Использование Отражатель и его плагин Reflexil ; конечно, если сборки подписаны, они больше не будут работать вместе (на самом деле я думаю, что они вообще не будут работать?). В противном случае вам даже не нужно будет изменять ссылки, я думаю.

Редактировать: также Марк абсолютно прав; не могу представить, какой сценарий потребовал бы от вас этого, он довольно хакерский.

0 голосов
/ 20 сентября 2010

Похоже, вам нужна политика издателя или перенаправление привязки .Это позволит вашим сборкам всегда использовать последнюю версию или использовать определенную версию указанной сборки.

0 голосов
/ 20 сентября 2010

Самый простой вариант - просто перестроить и заново развернуть.Есть некоторые вещи, которые вы можете сделать в config ( runtime / assemblyBinding / зависимый Assembly / bindingRedirect ), но здесь это кажется излишним, так как я не уверен, как бы вы пошли по поводу изменения номеров версийсборки без их перестроения, особенно если они подписаны / имеют строгое имя (среда выполнения обнаружит злодеев).

Звучит как работа для меня ...

Еслиdlls ваши, просто перестройте их с правильной мета версией.Если они не ваши, возможно, не пытайтесь с ними подойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...