2011-10-25 19 views
7

Sto compilando un codice C++ di terze parti utilizzando/CLR flag che richiede solo .NET Framework 3.5.Come specificare la versione .NET quando si utilizza l'opzione/CLR

Il codice è sempre compilato bene, ma dal momento che ho .NET 4.0 installato sulla mia macchina dev binario risultante non funzionare per qualsiasi framework .NET inferiore a 4,0

Allora, come faccio a dire di Visual Studio utilizzare una versione particolare di .NET Framework durante la compilazione?

+0

Nel solution explorer fare clic con il tasto destro del mouse sul progetto. Apparirà la pagina del progetto e da lì puoi scegliere il tuo Target Framework. –

+0

Ecco un riferimento, si riferisce ai progetti web ma la teoria dovrebbe essere la stessa. http://msdn.microsoft.com/en-us/library/bb398791.aspx#additional_information –

+2

Non ho l'opzione. Ho appena visto "Target Framework" come 4.0. Si noti che è un'applicazione C++. Se fosse un'applicazione C#, sarebbe stato diverso – user837208

risposta

8

Citando un articolo sul Visual C++ Team Blog, Visual Studio 2010 C++ Project Upgrade Guide:

... il compilatore VS2010 non può indirizzare Framework 2.0, 3.0 o 3.5. Il compilatore VS2008 deve essere utilizzato per target 2.0, 3.0 o 3.5. ... applicazioni C++ possono essere reindirizzati ad altri framework (diciamo 3,5 per esempio) da uno dei seguenti metodi:

  • Modificare il file vcxproj e nel primo gruppo di proprietà definiscono aggiungere il seguente: <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
  • Aprire la riga di comando VS2010, set TargetFrameworkVersion=v3.5, quindi avviare devenv.exe dalla riga di comando. Questo indirizzerà tutte le tue applicazioni C++ al framework v3.5.
  • Passo /p:TargetFrameworkVersion=v3.5 a MSBuild quando la creazione di applicazioni: MSBuild my.vcxproj /p:TargetFrameworkVersion=v3.5

Nota che VS2008 deve essere installato sulla macchina per l'applicazione di indirizzare 2.0, 3.0 o 3.5.

+0

Grazie! che funzioni. – user837208

Problemi correlati