2010-08-06 2 views
1

Есть ли способ сделать визуальную студию не заботящейся о версиях dll? Это плохая идея?Make Visual Studio не заботится о версиях DLL

Я сбрасываю свою машину dev, и я только что установил последнюю версию Pex и Moles (версия .92). Все мои проекты находятся на версии .91.

Мы находимся в середине выпуска и не хотим обновляться прямо сейчас. Кроме того, я не могу найти установщика для версии .91.

Когда я пытаюсь скомпилировать, я получаю сообщение о том, что мне не хватает ссылки. (Отсюда этот вопрос)

ответ

4

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

Это было частью того, что было известно как «DLL Hell» в дни предверии. Если вам нужно использовать сторонний компонент (Crystal Reports Viewer - это тот, с которым нам всегда приходилось иметь дело), ​​вы просто использовал бы ссылку на любую установленную версию на ПК пользователя. У наших торговых точек должна была быть определенная версия Crystal Reports для их отчетов о книгах, чтобы печатать правильно, и из-за этого нам приходилось держаться на старой версии навсегда. Обновление Crystal на ПК нарушило приложение для работы с продавцом. На моем первом ПК, у меня было несколько приложений, когда я устанавливал или обновлял другой. В частности, Real Player нарушил мое программное обеспечение для автоответчика. Goofy такие вещи ...

Итак, версия важна, даже если это раздражение. Именно поэтому у меня есть предвзятость в отношении сторонних инструментов, для которых у меня нет кода, и я не могу перекомпилировать себя.

3

Если вы посмотрите на свойства ссылочной библиотеки DLL, вы увидите свойство «Специфическая версия». Если вы установите значение false, оно не отслеживает конкретную версию файла проекта.

Для этого вам необходимо как-то исправить ссылки, где бы они ни использовались. Вы можете сделать это, открыв каждое решение и зафиксировав ссылки (в это время вы также можете просто обновить ссылки на правильную версию, обращая внимание на комментарии Дэвида).

Если у вас есть много решений, вы можете использовать такой инструмент, как sed (см. Этот пост для версий Windows, таких как Is there any sed like utility for cmd.exe), чтобы просто обновлять файлы проекта по мере необходимости.

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