標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

そのソリューションを開くべき Visual Studio のバージョンは?

ソリューションファイル(*.sln)の記述

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "HOGEHOGE", "HOGEHOGE\HOGEHOGE.vbproj", "{E951CFF8-148E-40D5-93CD-17118375A437}"

コメント行に Visual Studio 2010 というテキストがあるので参考になる。だが、これは、このソリューションファイルを作成した時の Visual Studio のバージョンであるので、現在使うべき Visual Studio であるという保証はない。(新しいバージョンの Visual Studio 向けにアップグレードしても、このコメント欄は更新されない)

プロジェクトファイル(*.vbproj等)の記述

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

古い Visual Studio は、新しい ToolsVersion をサポートしていない場合があるため、これで使用すべき Visual Studio は制限される。

MSBuild ツールセット (ToolsVersion) - Visual Studio | Microsoft Docsによると

if you open a Visual Studio 2008 project in Visual Studio 2010, the project file is updated to include ToolsVersion="4.0". If you then try to open that project in Visual Studio 2008, it doesn't recognize the upgraded ToolsVersion and therefore builds the project as though the attribute was still set to 3.5.

Visual Studio 2010 and Visual Studio 2012 use a ToolsVersion of 4.0. Visual Studio 2013 uses a ToolsVersion of 12.0. Visual Studio 2015 uses ToolsVersion 14.0, and Visual Studio 2017 uses ToolsVersion 15.0.

つまり

ということになるようだ。

(追記)ソリューションファイル

ソリューションファイルには、さらに次のような文もあることが確認された。奥が深い

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1