Проект развертывания в VS не перезаписывает файлы. Случается, что, поскольку у вас установлено значение RemovePreviousVersions равным true, при изменении версии программного файла и GUID ProductCode проекта установки сначала будет удалена предыдущая версия, а затем будет выполнена чистая установка новой версии.
Чтобы убедиться, что некоторые файлы не могут быть перезаписаны, я обычно исключаю их из файлов содержимого или первичных файлов (где бы они ни находились), а затем добавлял их отдельно в проект установки. Вы можете индивидуально установить свойства для этих файлов. Имущество, которое вы ищете, называется «Постоянным», если при установке в true никогда не удаляется файл, о котором идет речь, и поэтому он никогда не перезапишет его новой версией. Единственным недостатком этого является то, что при удалении продукта постоянные файлы не будут удалены из своих целевых мест, но в моем случае (как правило, локальные файлы БД), что это хорошая вещь,!.)
Приветствия
[править] это верно для VS 2008 SP1 Haven» t попробовал это на других версиях, так что, надеюсь, вы используете одну и ту же версию VS или работает для версии, которую вы используете.
[edit2] О, также вы также можете использовать свойство «Условие» для достижения чего-то похожего ар. Если вы это сделаете, убедитесь, что для параметра «Транзитив» установлено значение «Истина», поэтому условие всегда оценивается. Не пробовал с условиями, но это еще один вариант, на который вы могли бы обратить внимание. Помимо этих 2, я думаю, что это почти так для проектов развертывания VS.
Отлично, спасибо! Это должно быть отмечено как ответ. –
Правила замены файлов [здесь] (http://msdn.microsoft.com/en-us/library/aa370531(v=VS.85).aspx). – CyberMonk
Использование VS2010 SP1. Это не работает для меня ... Файл заменяется, даже если для параметра «Постоянный набор» установлено значение true! Он заменяется, когда дата/время файла на диске старше даты времени создания пакета. В VS2010, а не SP1, он был заменен, когда время даты файла на диске было старше, чем дата времени файла, используемого для создания пакета. Время установки исходного файла на 01/01/2001 разрешило мне много неприятностей, но оно больше не работает !!! –