InstallShield LE 2012 ToolsVersion Defaults to 3.5, TFS Automated Build не работает

Есть ли способ изменить проект InstallShield LE 2012 так, чтобы по умолчанию всегда использовался MSBuild ToolsVersion 4.0?

Я вижу, что когда я оставляю значение 3.5, мои автоматические сборки терпят неудачу в TFS. Когда я установил его вручную с помощью блокнота на 4.0, он работает нормально. Однако любые изменения в файле проекта после этого в среде IDE приводят к возврату к версии 3.5.

Есть ли способ по умолчанию 4.0?

Спасибо


person Adam Corrow    schedule 26.06.2013    source источник


Ответы (1)


Я не нашел способа установить для проекта по умолчанию версию инструментов 4.0, но вы всегда можете передать параметр /tv:4.0 MSBuild в свою автоматическую сборку TFS. Единственная проблема, связанная с этим, заключается в том, что в вашем решении есть какие-либо проекты, которые не следует создавать с использованием инструментов 4.0.

Другой вариант - убедиться, что инструменты 3.5 установлены и правильно настроены на сервере сборки. Я знаю, что с этим есть некоторые проблемы, и для правильной работы 3.5 требуется некоторая модификация файлов Installshield Target.

Чтобы он работал с установленными инструментами 3.5 и 4.0, вы замените раздел, который гласит

<UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration"
           AssemblyName="Microsoft.Build.Tasks.v3.5"
                   Condition="'$(MsBuildToolsVersion)'=='3.5'"/>

Со следующими

<UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration"
           AssemblyName="Microsoft.Build.Tasks.v3.5,Version=3.5.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a"   
                   Condition="'$(MsBuildToolsVersion)'=='3.5'"/>
person FlyerMM    schedule 03.10.2013