Как заставить VS 2008 Deployment Project установить две разные версии одного и того же файла в двух разных местах? - PullRequest
0 голосов
/ 02 июля 2010

Немного предыстории: У меня есть проект развертывания VS 2008. Я не использую выходные данные проекта, я добавляю файлы сборок напрямую, потому что у нас есть сторонние инструменты лицензирования и запутывания, которые мы запускаем на сборках после их сборки. В этот проект развертывания также включен справочный каталог с примерами.

Одним из примеров является проект C #, который ссылается на некоторые сборки из основной программы. Мы включили папку bin \ Release для этого примера проекта, чтобы конечный пользователь мог легко запустить пример без необходимости запуска примера через отладчик или что-либо еще. Это может иметь более старые версии основных сборок проекта, потому что это будет зависеть от того, когда последний раз создавался пример проекта.

Вопрос: Сборки основного проекта, на которые ссылается пример проекта, включены в папку bin \ Release для примера, а сборка с тем же именем, но другой версией находится в каталоге приложений в проекте развертывания. Кажется, что VS 2008 пытается минимизировать пространство, распознавая, что эти файлы имеют одинаковые имена, поэтому он хранит одну копию. Однако он использует файл из примера, а не файл из основного проекта. Есть ли способ указать VS использовать указанный файл каждый раз, даже если может существовать другой файл с тем же именем?

1 Ответ

0 голосов
/ 02 июля 2010

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

Мне пришлось исключить зависимости (поскольку VS не позволит вам их удалить) и вручную добавить те же файлы. Теперь каждый раз, когда я делаю сборку, я получаю последнюю версию этих файлов.

...