Как развернуть пользовательскую задачу MSBuild, используя MEF?

StackOverflow https://stackoverflow.com/questions/3470837

Вопрос

У меня есть несколько пользовательских элементов и шаблонов проектов для Visual Studio 2010. Я создал пакет VSIX, который можно использовать для развертывания этих расширений для нескольких машин разработчиков.

Сейчас я создаю пользовательскую задачу MSBuild, которая потребуется для нового шаблона элемента.

В моем местном проекте я могу заставить это работать, надевая жесткий путь в файле проекта:

Но это не работает, когда пакет VSIX развернут в экземпляр «DEV» Visual Studio. Visual Studio просто сообщает, что не может быть найден на CustombuildTask.dll.

Где VSIX развернут DLL? Есть ли переменная MSBuild% (Path), которую я могу использовать для поиска DLL на других машинах, или каждый пользователь должен вручную копировать DLL и / или разместить глобальные файлы «.Tasks» в их установку Visual Studio?

ПРИМЕЧАНИЕ. Не существует типа содержимого VSIX для задач MSBuild, способ существует для элементов и шаблонов проектов. Я попробовал «vs Package», «MEF компонент» и «пользовательский тип расширения» - и никто не работает.

Это было полезно?

Решение

Я не верю, что вы можете сделать это, поскольку пакеты VSIX не могут устанавливать файлы в произвольных местах, а задача MSBuild должна будет пойти в папку MSBUILD.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top