2010-07-02 6 views
0

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

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

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

+0

Вы устанавливаете пример в * другой * каталог? Каталог приложений - это * не * другой каталог. –

+0

Я попытался просто обновить ссылку в примере проекта, и кажется, что сборка в Каталоге приложений не изменилась. Возможно, что VS хранит точный файл, который вы добавляете, и не получаете новый файл при перестройке проекта? – Jack

+0

Существует два каталога в каталоге приложений «bin» и «help», пример находится в каталоге «help», основное приложение находится в «bin». – Jack

ответ

0

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

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