Visual Studio の各バージョンごとにデフォルトの PlatformToolset (コンパイルエンジンのバージョン)があります。
Visual Studio のバージョン | PlatformToolset |
---|---|
Visual Studio 2017 | v141 |
Visual Studio 2019 | v142 |
Visual Studio 2022 | v143 |
Visual Studio 2017 で作成したソリューション/プロジェクトを Visual Studio 2019 で開くと Visual Studio 2019 の標準の v142 に変換するか 確認するダイアログが出ます。一度ソリューションを開くとユーザーの選択がローカルに保存されるので同じソリューションを再度開いても再度確認される ことはありません。
しかしながら別のフォルダーにソースコードを clone した場合などには再度ユーザーに確認するダイアログが出るので煩雑です。
PlatformToolset
の設定を外部のファイル にまとめます- そのファイルでは、
Condition
の指定で開かれた Visual Studio のバージョンによって、デフォルトで 使用する PlatformToolset
を指定します。 - 各プロジェクトファイルで上記ファイルを Import Project でインクルードします。
https://qiita.com/yumetodo/items/a8324efaf83c9c08d168
上記方法によって、デフォルトで使用する PlatformToolset
を変更しますが、
/p:PlatformToolset=v141
あるいは /p:PlatformToolset=v142
のようなパラメータを msbuild.exe
の引数に
追加してやれば、デフォルトの設定を上書きして好きな PlatformToolset
でコンパイルすることができます。