web-dev-qa-db-ja.com

Visual Studio 2019:Platform Toolset V140_XPの使用方法

Platform Toolset V140_XPを使用しようとしました。機能しないエラーメッセージが機能しないように、Windows XP]のアプリケーションをコンパイルしようとしています。

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.
 _

明らかに、ツールはWindows SDK v7.1aを探しています。 MicrosoftからWindows 7 SDKをダウンロードしても機能しません。インストールすることを管理していても、SDKにはバージョン7.1(Aを指定せずに)、7.1aがありません。だからエラーは残っています。

Windows SDK V7.1AがVisual Studio 2015に含まれていることを確認しましたが、Visual Studio 2019インストーラのどこにも見つけることができません。

V140_xpツールセットを使用する方法

問題を再現する手順

  • desktop C++開発でVisual Studio 2019をインストールします
  • visual Studio 2019インストーラの「MSVC V140 - VS2015 C++ビルドツール」を選択します。
  • c ++コンソールアプリケーションプロジェクトを作成します
  • プロジェクト設定を編集します
  • v140_XPプラットフォームツールセットを選択してください
  • プロジェクトを構築してみてください
4
Sven

Visual Studio 2019インストーラでは、Windows SDK 7.1Aはオプションの後ろに隠れています。「C++ Windows XP VS 2017(V141)のサポート(VS161)[廃止予定]]]。

そのオプションの上にマウスをホバリングすると、Windows SDK 7.1がそのコンポーネントに含まれていることを示すツールチップが表示されます。

全体の手順は次のとおりです。 https://docs.microsoft.com/en-us/cpp/build/configing-programs-for-windows-xp?view=vs-2019

7
Sven

更新されたアップデートされた人は、インストーラGUIが私のように混乱する人のために更新されました。

上部に「個々のコンポーネント」タブがあり、左側の「個々のコンポーネント」チェックリストのチェックリスト(---)。

"C++ Desktop Development"を確認しても、チェックリストに表示されるすべてのC++コンポーネントがトリガーされます。 「WinXPサポート」をタブで最初にチェックする必要があります。チェックリストに表示されます。

enter image description here

関連項目: https://github.com/microsoftdocs/cpp-docs/issues/181

1
Dennis