Konfigurieren von Programmen für Windows XPConfiguring Programs for Windows XP

Visual Studio unterstützt mehrere Plattformtoolsets.Visual Studio supports multiple platform toolsets. Das bedeutet, Sie können Zielbetriebssysteme und Ziellaufzeitbibliotheken festlegen, die nicht vom Standardtoolset unterstützt werden.That means it's possible to target operating systems and runtime libraries that aren't supported by the default toolset. Indem Sie das Plattformtoolset wechseln, können Sie beispielsweise den Visual Studio 2017-C++-Compiler verwenden, um Apps für Windows XP und Windows Server 2003 zu erstellen.For example, by switching the platform toolset, you can use the Visual Studio 2017 C++ compiler to create apps that target Windows XP and Windows Server 2003. Sie können auch ältere Plattformtoolsets verwenden, um binärkompatiblen Legacycode zu verwalten und dennoch die neuesten Funktionen der Visual Studio-IDE zu nutzen.You can also use older platform toolsets to maintain binary-compatible legacy code and still take advantage of the latest features of the Visual Studio IDE.

Das v142-Toolset, das in Visual Studio 2019 enthalten ist, umfasst keine Unterstützung zum Erstellen von Code für Windows XP.The v142 toolset supplied in Visual Studio 2019 doesn't include support for creating code for Windows XP. Die Unterstützung der Windows XP-Entwicklung mithilfe des Visual Studio 2017-v141_xp-Toolsets steht im Visual Studio-Installer als Einzelkomponente zur Verfügung.Support for Windows XP development by using the Visual Studio 2017 v141_xp toolset is available as an individual component option in the Visual Studio Installer.

Installieren des Windows XP-PlattformtoolsetsInstall the Windows XP platform toolset

Führen Sie den Visual Studio-Installer aus, um das Visual Studio 2017-Plattformtoolset und die -Komponenten für Windows XP und Windows Server 2003 abzurufen.To get the Visual Studio 2017 platform toolset and components to target Windows XP and Windows Server 2003, run the Visual Studio Installer. Achten Sie bei der erstmaligen Installation von Visual Studio oder beim Anpassen einer bestehenden Installation darauf, dass die Workload Desktopentwicklung mit C++ ausgewählt ist.When you initially install Visual Studio or when you modify an existing installation, make sure the Desktop development with C++ workload is selected. Wählen Sie in der Liste der optionalen Komponenten für diese Workload Windows XP-Unterstützung für C++ und dann Installieren oder Ändern aus.In the list of optional components for this workload, choose Windows XP support for C++ , and then choose Install or Modify.

Führen Sie den Visual Studio-Installer aus, um das v141_xp-Plattformtoolset und die -Komponenten für Windows XP und Windows Server 2003 abzurufen.To get the v141_xp platform toolset and components to target Windows XP and Windows Server 2003, run the Visual Studio Installer. Achten Sie bei der erstmaligen Installation von Visual Studio oder beim Anpassen einer bestehenden Installation darauf, dass die Workload Desktopentwicklung mit C++ ausgewählt ist.When you initially install Visual Studio, or when you modify an existing installation, make sure the Desktop development with C++ workload is selected. Wählen Sie auf der Registerkarte Einzelne Komponenten unter Compilers, build tools, and runtimes (Compiler, Buildtools und Runtimes) die Option C++-Windows XP-Unterstützung für Tools in VS 2017 (v141) [veraltet] aus, und klicken Sie dann auf Installieren oder Modify.In the Individual components tab, under Compilers, build tools, and runtimes , choose C++ Windows XP Support for VS 2017 (v141) tools [Deprecated] , and then choose Install or Modify.

Windows XP als ZielWindows XP targeting experience

Das in Visual Studio enthaltene Windows XP-Plattformtoolset ist eine Version des Windows 7 SDK, es verwendet jedoch den Visual Studio 2017-C++-Compiler.The Windows XP platform toolset that's included in Visual Studio is a version of the Windows 7 SDK, but it uses the Visual Studio 2017 C++ compiler. Es konfiguriert außerdem Projekteigenschaften auf entsprechende Standardwerte, beispielsweise durch Angabe eines mit älteren Zielplattformen kompatiblen Linkers.It also configures project properties to appropriate default values, for example, the specification of a compatible linker for down-level targeting. Nur Windows-Desktop-Apps, die mithilfe eines Windows XP-Plattformtoolsets erstellt wurden, können unter Windows XP und Windows Server 2003 ausgeführt werden.Only Windows desktop apps created by using a Windows XP platform toolset can run on Windows XP and Windows Server 2003. Diese Apps können auch auf aktuelleren Windows-Betriebssystemen ausgeführt werden.Those apps can also run on more recent Windows operating systems.

So entwickeln Sie für Windows XPTo target Windows XP

  1. Öffnen Sie im Projektmappen-Explorer das Kontextmenü für das Projekt, und wählen Sie Eigenschaften aus.In Solution Explorer , open the shortcut menu for your project, and then choose Properties.

  2. Klicken Sie im Dialogfeld Eigenschaftenseiten für das Projekt auf Konfigurationseigenschaften > Allgemein.In the Property Pages dialog box for the project, select Configuration Properties > General. Legen Sie die Eigenschaft Plattformtoolset auf Ihr bevorzugtes Windows XP-Toolset fest.Set the Platform Toolset property to your preferred Windows XP toolset. Wählen Sie beispielsweise Visual Studio 2017 – Windows XP (v141_xp) aus, um Code für Windows XP und Windows Server 2003 mithilfe des Microsoft C++-Compilers in Visual Studio 2017 zu erstellen.For example, choose Visual Studio 2017 - Windows XP (v141_xp) to create code for Windows XP and Windows Server 2003 by using the Microsoft C++ compiler in Visual Studio 2017.

C++-LaufzeitunterstützungC++ runtime support

Neben dem Windows XP-Plattformtoolset umfassen mehrere Bibliotheken die Runtimeunterstützung für Windows XP und Windows Server 2003.Along with the Windows XP platform toolset, several libraries include runtime support for Windows XP and Windows Server 2003. Dazu gehören die folgenden: die C-Laufzeitbibliothek (CRT), die C++-Standardbibliothek, die Active Template Library (ATL), die Concurrency Runtime-Bibliothek (ConCRT), die Parallel Patterns Library (PPL), die Microsoft Foundation Class-Bibliothek (MFC) und die C++ AMP-Bibliothek (C++ Accelerated Massive Programming).These libraries are: the C Runtime Library (CRT), C++ Standard Library, Active Template Library (ATL), Concurrency Runtime Library (ConCRT), Parallel Patterns Library (PPL), Microsoft Foundation Class Library (MFC), and C++ AMP (C++ Accelerated Massive Programming) library. Die unterstützten Mindestversionen für diese Betriebssysteme sind: Windows XP Service Pack 3 (SP3) für x86, Windows XP Service Pack 2 (SP2) für x64 und Windows Server 2003 Service Pack 2 (SP2) sowohl für x86 als auch für x64.For these operating systems, the minimum supported versions are: Windows XP Service Pack 3 (SP3) for x86, Windows XP Service Pack 2 (SP2) for x64, and Windows Server 2003 Service Pack 2 (SP2) for both x86 and x64.

Diese Bibliotheken werden von den von Visual Studio installierten Plattformtoolsets unterstützt, abhängig vom Ziel:These libraries are supported by the platform toolsets installed by Visual Studio, depending on the target:

BibliothekLibrary Standard-Plattformtoolset mit Windows-Desktop-Apps als ZielDefault platform toolset targeting Windows desktop apps Standard-Plattformtoolset mit Store-Apps als ZielDefault platform toolset targeting Store apps Windows XP-Plattformtoolset mit Windows XP, Windows Server 2003 als ZielWindows XP platform toolset targeting Windows XP, Windows Server 2003
CRTCRT XX XX XX
C++-StandardbibliothekC++ Standard Library XX XX XX
ATLATL XX XX XX
ConCRT/PPLConCRT/PPL XX XX XX
MFCMFC XX XX
C++ AMPC++ AMP XX XX

Hinweis

Apps, die in C++/CLI geschrieben sind und .NET Framework 4 als Ziel haben, können unter Windows XP und Windows Server 2003 ausgeführt werden.Apps that are written in C++/CLI and target the .NET Framework 4 run on Windows XP and Windows Server 2003.

Unterschiede zwischen den ToolsetsDifferences between the toolsets

Aufgrund von Unterschieden bei Plattform- und Bibliotheksunterstützung ist die Entwicklungsumgebung für Apps, die ein Windows XP-Plattformtoolset verwenden, nicht so umfassend wie für Apps, die das standardmäßige Visual Studio-Plattformtoolset verwenden.Because of differences in platform and library support, the development experience for apps that use a Windows XP platform toolset isn't as complete as for apps that use the default Visual Studio platform toolset.

  • Funktionen der Programmiersprache C++C++ language features

    In Apps, die das v110_xp-Plattformtoolset verwenden, werden nur die Funktionen der Programmiersprache C++unterstützt, die in Visual Studio 2012 implementiert sind.Only C++ language features implemented in Visual Studio 2012 are supported in apps that use the v110_xp platform toolset. In Apps, die das v120_xp-Plattformtoolset verwenden, werden nur die Funktionen der Programmiersprache C++unterstützt, die in Visual Studio 2013 implementiert sind.Only C++ language features implemented in Visual Studio 2013 are supported in apps that use the v120_xp platform toolset. In Apps, die das v140_xp-Plattformtoolset verwenden, werden nur die Funktionen der Programmiersprache C++unterstützt, die in Visual Studio 2015 implementiert sind.Only C++ language features implemented in Visual Studio 2015 are supported in apps that use the v140_xp platform toolset. In Apps, die das v141_xp-Plattformtoolset verwenden, werden nur die Funktionen der Programmiersprache C++unterstützt, die in Visual Studio 2017 implementiert sind.Only C++ language features implemented in Visual Studio 2017 are supported in apps that use the v141_xp platform toolset. Visual Studio verwendet für Builds mit den älteren Plattformtoolsets den entsprechenden Compiler.Visual Studio uses the corresponding compiler when it builds using the older platform toolsets. Verwenden Sie das neueste Windows XP-Plattformtoolset, um weitere C++-Features zu nutzen, die in dieser Version des Compilers implementiert sind.Use the most recent Windows XP platform toolset to take advantage of additional C++ language features implemented in that version of the compiler.

  • RemotedebuggenRemote debugging

    Die Remotetools für Visual Studio unterstützen kein Remotedebuggen unter Windows XP oder Windows Server 2003.Remote Tools for Visual Studio doesn't support remote debugging on Windows XP or Windows Server 2003. Verwenden Sie einen Debugger einer älteren Version von Visual Studio, um eine App lokal oder remote unter Windows XP oder Windows Server 2003 zu debuggen.To debug an app locally or remotely on Windows XP or Windows Server 2003, use a debugger from an older version of Visual Studio. Dies ähnelt dem Debuggen einer App unter Windows Vista, das ein Runtimeziel des Plattformtoolsets, aber kein Remotedebuggingziel ist.It's similar to debugging an app on Windows Vista, which is a runtime target of the platform toolset, but not a remote debugging target.

  • Statische AnalyseStatic analysis

    Die Windows XP-Plattformtoolsets unterstützen keine statischen Analysen, da die SAL-Anmerkungen für das Windows 7-SDK und die Laufzeitbibliotheken nicht kompatibel sind.The Windows XP platform toolsets don't support static analysis because the SAL annotations for the Windows 7 SDK and the runtime libraries are incompatible. Sie können weiterhin statische Analysen für eine App durchführen, die Windows XP oder Windows Server 2003 unterstützt.You can still perform static analysis on an app that supports Windows XP or Windows Server 2003. Wechseln Sie das Ziel der Lösung für die Analyse vorübergehend zum Standardplattformtoolset, und wechseln Sie dann zurück zum Windows XP-Plattformtoolset, um die App zu erstellen.Temporarily switch the solution to target the default platform toolset for the analysis, and then switch back to the Windows XP platform toolset to build the app.

  • Debuggen von DirectX-GrafikenDebugging of DirectX graphics

    Da der Grafikdebugger die Direct3D 9-API nicht unterstützt, kann er nicht zum Debuggen von Apps verwendet werden, die Direct3D unter Windows XP oder Windows Server 2003 verwenden.Because the Graphics Debugger doesn't support the Direct3D 9 API, it can't be used to debug apps that use Direct3D on Windows XP or Windows Server 2003. Wenn die App jedoch einen alternativen Renderer implementiert, der auf der Direct3D 10- oder der Direct3D 11-API basiert, können Sie den Grafikdebugger zum Diagnostizieren von Problemen verwenden.However, if the app implements an alternative renderer based on Direct3D 10 or Direct3D 11 APIs, you can use the Graphics Debugger to diagnose problems.

  • Erstellen von HLSLBuilding HLSL

    Standardmäßig kompiliert das Windows XP-Toolset keine HLSL-Quellcodedateien.The Windows XP toolset doesn't compile HLSL source code files by default. Zur Kompilierung von HLSL-Dateien laden Sie das June 2010 DirectX SDK herunter und installieren es und legen dann die VC-Verzeichnisse des Projekts so fest, dass es eingeschlossen ist.To compile HLSL files, download and install the June 2010 DirectX SDK, and then set the project's VC directories to include it. Weitere Informationen finden Sie im Abschnitt „DirectX-SDK registriert keine Include/Library-Pfade bei Visual Studio 2010“ der June 2010 DirectX SDK-Downloadseite.For more information, see the "DirectX SDK Does Not Register Include/Library Paths with Visual Studio 2010" section of the June 2010 DirectX SDK download page.