Configurazione di programmi per Windows XP

Visual Studio supporta più set di strumenti della piattaforma. Ciò significa che è possibile impostare come destinazione i sistemi operativi e le librerie di runtime che non sono supportati dal set di strumenti predefinito. Ad esempio, passando al set di strumenti della piattaforma, è possibile usare il compilatore C++ di Visual Studio 2017 per creare app destinate a Windows XP e Windows Server 2003. È anche possibile usare set di strumenti della piattaforma meno recenti per mantenere il codice legacy compatibile con il codice binario sfruttando comunque le funzionalità più recenti dell'IDE di Visual Studio.

Il set di strumenti fornito in Visual Studio 2019 e versioni successive non include il supporto per la creazione di codice per Windows XP. Il supporto per lo sviluppo di Windows XP è disponibile tramite il set di strumenti di visual Studio 2017 v141_xp. È possibile installare il set di strumenti v141_xp come opzione per singoli componenti nella Programma di installazione di Visual Studio.

Installare il set di strumenti della piattaforma di Windows XP

Per ottenere il set di strumenti e i componenti della piattaforma di Visual Studio 2017 destinati a Windows XP e Windows Server 2003, eseguire il Programma di installazione di Visual Studio. Quando si installa inizialmente Visual Studio o quando si modifica un'installazione esistente, assicurarsi che sia selezionato il carico di lavoro Sviluppo di applicazioni desktop con C++ . Nell'elenco dei componenti facoltativi di questo carico di lavoro selezionare Supporto Windows XP per C++ e quindi scegliere Installa o Modifica.

Per ottenere il set di strumenti e i componenti della piattaforma v141_xp destinati a Windows XP e Windows Server 2003, eseguire il Programma di installazione di Visual Studio. Quando si installa inizialmente Visual Studio o quando si modifica un'installazione esistente, assicurarsi che sia selezionato il carico di lavoro Sviluppo di applicazioni desktop con C++ . Nella scheda Singoli componenti, in Compilatori, strumenti di compilazione e runtime, scegliere Supporto windows XP C++ per VS 2017 (v141) strumenti [Deprecato], quindi scegliere Installa o Modifica.

Esperienza destinata a Windows XP

Il set di strumenti della piattaforma Windows XP incluso in Visual Studio è una versione di Windows 7 SDK, ma usa il compilatore C++ di Visual Studio 2017. 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 di Windows create usando un set di strumenti della piattaforma Windows XP possono essere eseguite in Windows XP e Windows Server 2003. Queste app possono essere eseguite anche in sistemi operativi Windows più recenti.

Per usare Windows XP

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

  2. Nella finestra di dialogo Pagine delle proprietà per il progetto impostare l'elenco a discesa Configurazione su Tutte le configurazioni.

  3. Selezionare la pagina delle proprietà Proprietà di configurazione>Generale. Impostare la proprietà Platform Toolset sul set di strumenti di Windows XP preferito. Ad esempio, scegliere Visual Studio 2017 - Windows XP (v141_xp) per creare codice per Windows XP e Windows Server 2003 usando il compilatore Microsoft C++ da Visual Studio 2017.

Supporto di C++ runtime

Oltre al set di strumenti della piattaforma Windows XP, diverse librerie includono il supporto di runtime per Windows XP e Windows Server 2003:

  • Libreria UWP (Universal C Runtime Library)
  • libreria standard C++
  • Active Template Library (ATL)
  • Libreria di runtime di concorrenza (ConcRT)
  • PPL (Parallel Patterns Library)
  • Microsoft Foundation Class Library (MFC)
  • Libreria C++ AMP (C++ Accelerated Massive Programming).

Le versioni minime supportate di questi sistemi operativi 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 dello Store Set di strumenti della piattaforma di Windows XP per il supporto di Windows XP, Windows Server 2003
CRT X X X
libreria standard C++ 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 per .NET Framework 4 vengono eseguite in Windows XP e Windows Server 2003.

Differenze tra i set di strumenti

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

  • Funzionalità del linguaggio C++

    Nelle app che usano il set di strumenti della piattaforma v141_xp sono supportate solo le funzionalità del linguaggio C++ implementate in Visual Studio 2017. Solo le funzionalità del linguaggio C++ implementate in Visual Studio 2015 sono supportate nelle app che usano il set di strumenti della piattaforma v140_xp. Visual Studio usa il compilatore corrispondente quando esegue le compilazioni con set di strumenti della piattaforma precedenti. Usare il set di strumenti della piattaforma Windows XP più recente per sfruttare le funzionalità del linguaggio C++ più recenti implementate in tale versione del compilatore. Per altre informazioni sul supporto delle funzionalità del linguaggio in base alla versione del compilatore, vedere Conformità al linguaggio C/C++di Microsoft.

  • Debug remoto

    Il debug remoto in Windows XP o Windows Server 2003 non è supportato da Remote Tools per Visual Studio. Per eseguire il debug di un'app in locale o in remoto in Windows XP o Windows Server 2003, usare un debugger da una versione precedente di Visual Studio. È simile al debug di un'app in Windows Vista: Vista è una destinazione di runtime del set di strumenti della piattaforma, ma non una destinazione di debug remoto.

  • Analisi statica

    I set di strumenti della piattaforma Windows XP non supportano l'analisi statica. Le annotazioni SAL per Windows 7 SDK e le librerie di runtime non sono compatibili. È comunque possibile eseguire analisi statiche in un'app che supporta Windows XP o Windows Server 2003. Passare temporaneamente alla soluzione per impostare come destinazione il set di strumenti della piattaforma predefinito per l'analisi e quindi tornare al set di strumenti della piattaforma Windows XP per compilare l'app.

  • Debug della grafica DirectX

    Il debugger della grafica non supporta l'API Direct3D 9. Non può essere usato per eseguire il debug di app che usano Direct3D in Windows XP o Windows Server 2003. Tuttavia, se l'app implementa un renderer alternativo basato su API Direct3D 10 o Direct3D 11, è possibile usare il debugger della grafica per diagnosticare i problemi.

  • Compilazione HLSL

    Il set di strumenti di Windows XP non compila i file di codice sorgente HLSL per impostazione predefinita. 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 percorsi di inclusione/libreria con Visual Studio 2010" della pagina di download di DirectX SDK di giugno 2010 (collegamento archiviato).

Distribuzione di Windows XP

Importante

Poiché non supporta i certificati di firma del codice SHA-256, il supporto della libreria di runtime per Windows XP non è più disponibile nella versione più recente di Visual C++ Redistributable per Visual Studio 2015, 2017, 2019 e 2022. Ultimo ridistribuibile per supportare Windows XP fornito in Visual Studio 2019 versione 16.7. Usare un elemento Redistributable con una versione del file a partire dalla versione 14.27. Se le app di Windows XP vengono distribuite o aggiornate a una versione successiva della ridistribuibile, le app non verranno eseguite.

Se si usa una versione di Visual Studio successiva a Visual Studio 2019 versione 16.7, i file ridistribuibili non funzioneranno in Windows XP. Per ottenere una copia dei file ridistribuibili che supportano Windows XP, è necessario un account di Visual Studio. Usare l'account usato per accedere a Visual Studio. In alternativa, è possibile creare gratuitamente un account in my.visualstudio.com. Il file ridistribuibile è disponibile nella sezione Download, come Visual C++ Redistributable per Visual Studio 2019 - Versione 16.7. Per scaricare i file, selezionare la piattaforma e la lingua necessarie e quindi scegliere il pulsante Scarica.

È possibile usare la distribuzione centrale o la distribuzione locale per installare il supporto della libreria di runtime per l'app Windows XP. Per altre informazioni, vedere Procedura dettagliata: Distribuzione di un'applicazione Visual C++ tramite il pacchetto ridistribuibile di Visual C++.