Reputation: 1404
I am trying to compile an application for Windows XP using Visual Studio 2019. For that I tried to use platform toolset v140_xp. It does not work, the following error message appears:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Platforms\Win32\PlatformToolsets\v140_xp\Toolset.targets(36,5): warning MSB8003: Could not find WindowsSdkDir_71A variable from the registry. TargetFrameworkVersion or PlatformToolset may be set to an invalid version number.
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(366,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry. TargetFrameworkVersion or PlatformToolset may be set to an invalid version number.
Clearly, the tools are looking for the Windows SDK v7.1A. Downloading the Windows 7 SDK from Microsoft does not work. Even if you manage to install it, the SDK has version 7.1 (without the A) and not 7.1A. So the error remains.
I have found out that the Windows SDK v7.1A used to be included with Visual Studio 2015, but I cannot find it anywhere in the Visual Studio 2019 installer.
How do I use the v140_xp toolset?
Steps to reproduce the problem:
Upvotes: 5
Views: 17019
Reputation: 37770
Updated for someone who will be confused by installer GUI like me.
There are "Individual Components" tab on the top, and "Individual Components" check list on the left.
Checking "C++ Desktop Development" does not trigger all C++ components to appear in check list. "WinXP support" must be checked in tab first, and then it appears in check list:
See also: https://github.com/MicrosoftDocs/cpp-docs/issues/1810
Upvotes: 9
Reputation: 1404
In the Visual Studio 2019 Installer, the Windows SDK 7.1A is hidden behind the option "C++ Windows XP Support for VS 2017 (v141) tools [Deprecated]".
Hovering the mouse over that option a tooltip appears that states that Windows SDK 7.1 is included with that component.
The whole procedure is described here: https://learn.microsoft.com/en-us/cpp/build/configuring-programs-for-windows-xp?view=vs-2019
Upvotes: 10