Как указать .ЧИСТАЯ версия при использовании опции / CLR

#.net #visual-studio-2010 #compilation #c -cli #clr

#.net #visual-studio-2010 #Сборник #c -cli #clr

Вопрос:

Я компилирую сторонний код C , используя флаг /CLR, для которого требуется только .NET Framework 3.5.

Код компилируется нормально, но поскольку у меня установлен .NET 4.0 в моем окне разработки, полученный двоичный файл не работает ни для одной платформы .NET framework ниже 4.0

Итак, как мне указать Visual Studio использовать определенную версию .NET Framework при компиляции?

Комментарии:

1. В обозревателе решений щелкните проект правой кнопкой мыши. Появится страница проекта, и оттуда вы можете выбрать свою целевую платформу.

2. Вот ссылка, она относится к веб-проектам, но теория должна быть такой же. msdn.microsoft.com/en-us/library /…

3. Я не получаю эту опцию. Я просто вижу «Целевую платформу» как 4.0. Обратите внимание, что это приложение на C . Если бы это было приложение на C #, оно было бы другим

Ответ №1:

Цитирую статью в блоге Visual C Team, Руководство по обновлению проекта Visual Studio 2010 C :

… компилятор VS2010 не может быть нацелен на Framework 2.0, 3.0 или 3.5. Компилятор VS2008 должен использоваться для нацеливания на 2.0, 3.0 или 3.5. … Приложения на C могут быть перенацелены на другие платформы (например, 3.5) одним из следующих методов:

  • Отредактируйте файл vcxproj и в первой группе свойств define добавьте следующее: <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
  • Откройте командную строку VS2010, set TargetFrameworkVersion=v3.5 , а затем запустите devenv.exe из командной строки. Это нацелит все ваши приложения на C на платформу версии v3.5.
  • Переход /p:TargetFrameworkVersion=v3.5 к MSBuild при создании приложений: MSBuild my.vcxproj /p:TargetFrameworkVersion=v3.5

Обратите внимание, что на компьютере должен быть установлен VS2008, чтобы приложение было нацелено на 2.0, 3.0 или 3.5.