Это для всех людей, которые приходят сюда в поисках решения!
Ну, у меня была та же проблема, что и упомянутая выше, но DLL, которую я хотел избежать, - это обнаруженная зависимость (мой проект A зависит от B.dll, которая имеет зависимость от C.Dll (2.0.0.0)), но я не хочу C.dll (2.0.0.0) в моем MSI (поскольку у меня есть прямая зависимость от другой версии C.dll (1.0.0.0)). Я пытался исключить DLL, но это не сработало, поскольку VDProj обновляет зависимость каждый раз, когда я перезагружаю проект, и добавляет обнаруженную зависимость обратно.
Решение от Microsoft состояло в том, чтобы установить для свойства «CopyLocal» значение false для указанной библиотеки DLL, у меня было так много этих библиотек DLL, и я не хотел идти в каждый проект и обновлять его (поскольку это вызвало бы усилия по тестированию к небесной ракете, потому что согласно тестерам я фактически изменяю код для многих проектов). Поэтому я решил эту проблему, добавив определенную DLL (C.Dll (1.0.0.0)) в проект установки вручную. Просто щелкните правой кнопкой мыши проект установки и выберите «Добавить файл».
также не забудьте указать место, в которое вы хотите развернуть файл, в моем случае он направлялся в папку BIn.
Этот файл переопределит все другие обнаруженные зависимости (с похожим именем) и будет развернут в указанном нами месте.