Я обновлял несколько различных проектов VS2008 до VS2010 и обнаружил проблему с проектами VB.Net при их преобразовании.
После преобразования файлы .vbproj изменились по сравнению с этим в VS2008:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>CustomerManager.xml</DocumentationFile>
<WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
На это в VS2010:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>CustomerManager.xml</DocumentationFile>
<NoWarn>42353,42354,42355</NoWarn>
<WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
Основное отличие заключается в том, что в версии VS2010 добавлено значение 42353,42354,42355; Внутри IDE это проявляется в следующем параметре в свойствах проекта | Компилировать раздел как:
«Функция, возвращающая внутренний тип значения без возвращаемого значения» = Нет
Это не проблема при сборке кода внутри Visual Studio 2010, но при попытке построить код с помощью наших скриптов непрерывной интеграции происходит сбой со следующими ошибками:
[msbuild] vbc: ошибка командной строки
BC2026: номер предупреждения 42353 для
опция 'nowarn' либо нет
настраивается или недействителен
[msbuild] vbc: ошибка командной строки
BC2026: номер предупреждения 42354 для
опция 'nowarn' либо нет
настраивается или недействителен
[msbuild] vbc: ошибка командной строки
BC2026: номер предупреждения 42355 для
опция 'nowarn' либо нет
настраивается или не действителен
Я не смог найти в Google ничего для этих сообщений, что странно, так как я пытаюсь выяснить, почему это происходит.
Какие-либо предложения относительно того, почему мастер преобразования Visual Studio 2010 делает это?