Configurazione di programmi C++ 11 per Windows XP

Poiché Visual Studio supporta più set di strumenti della piattaforma, è possibile usare sistemi operativi e librerie di runtime non supportati dal set di strumenti predefinito.Ad esempio, è possibile usare i miglioramenti al linguaggio C++11, i compilatori, le librerie e le altre funzionalità implementate in Visual Studio per creare app destinate a Windows XP e Windows Server 2003.È possibile usare i set di strumenti della piattaforma meno recenti per gestire la compatibilità del codice legacy con il codice binario sfruttando le funzionalità più recenti dell'IDE di Visual Studio.

[!NOTA]

È necessario installare Visual Studio 2012 Update 4 per aggiungere il supporto dei set di strumenti della piattaforma per Windows XP e Windows Server 2003 a Visual Studio 2012.Per scaricare e installare una copia di Visual Studio 2012 Update 4, vedere Microsoft Visual Studio Express 2012 per Windows Desktop nell'Area download Microsoft.Installare quindi Visual Studio 2012 Update 4 per ottenere il set di strumenti della piattaforma v110_xp.Usare Windows Update per ricevere gli aggiornamenti più recenti del software dopo l'installazione.

Esperienza destinata a Windows XP

Il set di strumenti della piattaforma di Windows XP incluso in Visual Studio è una versione di Windows 7 SDK incluso in Visual Studio 2010, ma usa il compilatore C++ corrente.Configura inoltre le proprietà del progetto in base ai valori predefiniti appropriati, ad esempio specificando un linker compatibile per supportare una versione precedente.Solo le app desktop Windows create usando il set di strumenti della piattaforma di Windows XP vengono eseguite in Windows XP e Windows Server 2003, ma queste app possono essere eseguite anche in sistemi operativi più recenti, ad esempio Windows Vista, Windows 7, Windows Server 2008, Windows 8 o Windows Server 2012.

Per usare Windows XP

  1. In Esplora soluzioni aprire il menu di scelta rapida per il progetto, quindi scegliere Proprietà.

  2. Nella finestra di dialogo Pagine delle proprietà per il progetto impostare in Proprietà di configurazione, Generale la proprietà Set strumenti della piattaforma sul set di strumenti desiderato di Windows XP.Ad esempio, scegliere Visual Studio 2012 – Windows XP (v110_xp) per creare il codice per la compatibilità binaria con le librerie di Microsoft Visual C++ 2012 Redistributable.

Supporto di C++ runtime

Oltre al set di strumenti della piattaforma di Windows XP, la libreria runtime C (CRT), la libreria STL (Standard Template Library), la libreria ATL (Active Template Library), la libreria runtime di concorrenza (ConCRT), la libreria PPL (Parallel Patterns Library), la libreria Microsoft Foundation Class (MFC) e la libreria C++ AMP (C++ Accelerated Massive Programming) includono il supporto runtime per Windows XP e Windows Server 2003.Per questi sistemi operativi, le versioni supportate sono Windows XP Service Pack 3 (SP3) per x86, Windows XP Service Pack 2 (SP2) per x64 e Windows Server 2003 Service Pack 2 (SP2) per x86 e x64.

Queste librerie sono supportate dai set di strumenti della piattaforma installati da Visual Studio, a seconda della destinazione:

Libreria

Set di strumenti della piattaforma predefinito per il supporto delle app desktop Windows

Set di strumenti della piattaforma predefinito per il supporto delle app di Windows Store

Set di strumenti della piattaforma di Windows XP per il supporto di Windows XP, Windows Server 2003

CRT

X

X

X

STL

X

X

X

ATL

X

X

X

ConCRT/PPL

X

X

X

MFC

X

X

C++ AMP

X

X

[!NOTA]

Le app scritte in C++/CLI e che supportano .NET Framework 4 vengono eseguite in Windows XP e Windows Server 2003.

Differenze tra i set di strumenti

A causa delle differenze nel supporto di piattaforme e librerie, l'esperienza di sviluppo per le app che usano il set di strumenti della piattaforma per Windows XP non è completa come per le app che usano il set di strumenti della piattaforma predefinito per Visual Studio.

  • Funzionalità del linguaggio C++

    Nelle app che usano il set di strumenti della piattaforma v110_xp sono supportate solo le funzionalità del linguaggio C++11 implementate in Visual Studio 2012.Nelle app che usano il set di strumenti della piattaforma v120_xp sono supportate solo le funzionalità del linguaggio C++ 11 implementate in Visual Studio 2013.Visual Studio usa il compilatore corrispondente quando esegue le compilazioni con set di strumenti della piattaforma precedenti.Usare un set di strumenti della piattaforma di Windows XP più recente per sfruttare le funzionalità aggiuntive di C++11 implementate in tale versione.

  • Debug remoto

    Gli strumenti remoti per Visual Studio non supportano il debug remoto in Windows XP o Windows Server 2003.Per eseguire il debug di un'app in esecuzione in Windows XP o Windows Server 2003, è possibile usare un debugger di una versione precedente di Visual Studio per eseguirne il debug in locale o remoto.Ciò è simile all'esecuzione del debug di un'app in Windows Vista, che supporta il runtime del set di strumenti della piattaforma, ma non il debug remoto.

  • Analisi statica

    Il set di strumenti della piattaforma di Windows XP non supporta l'analisi statica, perché le annotazioni SAL per Windows 7 SDK e le librerie di runtime non sono compatibili.Quando si vuole eseguire l'analisi statica in un'app che supporta Windows XP o Windows Server 2003, è possibile passare temporaneamente al set di strumenti della piattaforma predefinito per eseguire l'analisi e quindi tornare al set di strumenti della piattaforma di Windows XP per compilare l'app.

  • Debug della grafica DirectX

    Poiché il debugger grafica non supporta l'API Direct3D 9, non può essere usato per eseguire il debug delle app che usano Direct3D in Windows XP o Windows Server 2003.Tuttavia, se l'app implementa un renderer alternativo che usa le API Direct3D 10 o Direct3D 11 API, il debugger grafica può essere usato per diagnosticare i problemi mediante tali API.

  • Compilazione HLSL

    Per impostazione predefinita, il set di strumenti di Windows XP non compila i file di codice sorgente HLSL.Per compilare i file HLSL, scaricare e installare DirectX SDK di giugno 2010, quindi impostare le directory VC del progetto per includerlo.Per altre informazioni, vedere la sezione "DirectX SDK non registra i percorsi di inclusione e della libreria con Visual Studio 2010" della pagina di download di DirectX SDK giugno 2010.