2011-10-25 12 views
7

Estoy compilando código C++ de terceros usando el indicador/CLR que requiere solamente .NET Framework 3.5.Cómo especificar la versión .NET al usar la opción/CLR

El código compilado se está muy bien, pero ya que tengo .NET 4.0 instalado en mi máquina dev el binario resultante no funcionará para cualquier plataforma .NET menos de 4,0

Así que, ¿cómo le digo Visual Studio utilizar una versión particular de .NET Framework durante la compilación?

+0

En el explorador de soluciones, haga clic derecho en el proyecto. Aparecerá la página del proyecto y desde allí puede elegir su Marco objetivo. –

+0

Aquí hay una referencia, pertenece a proyectos web pero la teoría debería ser la misma. http://msdn.microsoft.com/en-us/library/bb398791.aspx#additional_information –

+2

No tengo la opción. Acabo de ver "Target Framework" como 4.0. Tenga en cuenta que es una aplicación C++. Si se tratara de la aplicación C#, hubiera sido diferente – user837208

Respuesta

8

Citando un artículo sobre el Visual C++ Team Blog, Visual Studio 2010 C++ Project Upgrade Guide:

... el compilador VS2010 No se puede orientar Framework 2.0, 3.0 o 3.5. El compilador VS2008 se debe usar para apuntar a 2.0, 3.0 o 3.5. ... aplicaciones de C++ se pueden reorientarse a otros marcos (por ejemplo 3,5), por ejemplo, por uno de los métodos siguientes:

  • Editar el archivo vcxproj y en el primer grupo de propiedades definen agregar lo siguiente: <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
  • Abra la línea de comando VS2010, set TargetFrameworkVersion=v3.5, y luego inicie devenv.exe desde la línea de comandos. Esto apuntará a todas sus aplicaciones C++ al marco v3.5.
  • Pass /p:TargetFrameworkVersion=v3.5 a MSBuild en la construcción de aplicaciones: MSBuild my.vcxproj /p:TargetFrameworkVersion=v3.5

Tenga en cuenta que VS2008 tiene que ser instalado en la máquina para la aplicación al objetivo 2.0, 3.0 o 3.5.

+0

¡Gracias! eso funciona. – user837208

Cuestiones relacionadas