Исключение файлов из проекта веб-установки Visual Studio - PullRequest
3 голосов
/ 28 июня 2010

У меня есть проект Web Setup в VS.Я переключусь на WiX, но это в будущем, и в настоящее время мне нужно решить следующую проблему:

Мне нужно исключить некоторые распространенные библиотеки из проекта.Поэтому я строю проект, VS обновляет список обнаруженных зависимостей.Я исключаю их и сборка установки.Я проверяю список файлов с помощью Orca, и эти файлы не включаются в установщик.

Но когда я очищаю выходной каталог, перезагружаю решение и выполняю сборку, некоторые зависимости не отображаются как исключенные!И вот они попадают в MSI.(Это то, что происходит на сборочной машине).

Я думаю, что проблема может заключаться в том факте, что это зависимости второго уровня: my app -> NHibernate.dll -> Antlr3.Runtime.dll (Antlr dll заканчивается в MSI).

Это ошибка или я что-то упустил?

1 Ответ

2 голосов
/ 20 февраля 2012

Я нашел эту страницу на MSDN, в которой есть обходной путь для флага Исключить , сбрасываемого на Ложь :

Ранее исключенные файлы снова включаются при повторном открытии решения

Когда вы исключаете файл из проекта установки, вы можете увидеть, что файл снова включается после закрытия и повторного открытия решения. Это может произойти, если есть две копии одного и того же DLL-файла из двух разных исходных расположений.

Чтобы обойти эту ошибку, измените свойство Copy Local в одном из файлов:

В обозревателе решений щелкните ссылку на DLL, которую вы хотите удалить.

В меню Вид выберите Окно свойств.

Измените свойство Copy Local на False.

...