.sln
や.csproj
などの拡張機能の場合、デフォルトのアプリケーションはMicrosoft Visual Studio Version Selectorです。 2010 SP1と2012 RCの2つのバージョンがインストールされています。このアプリケーションはどのVSを起動するかを正確に決定しますか?
私はそれが次のように機能すると言います:
.sln
ファイルの最上部には次のようなものがあり、バージョンセレクターで判断できます。Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2010
これは私の気持ちですが、正確なルールは何ですか?
ファイルヘッダーにいくつかのバージョン情報があります。そうしないと、ファイルエクスプローラーが番号付きの.slnファイルに別のドキュメントアイコンを表示できなくなります。
vSバージョン2008/2010/2012/2013/2015/2017/2019の.slnファイルを表す
アイコン上のこの番号は、UTF-8署名を保持しないメモ帳またはその他のテキストエディタで.slnファイルを編集すると消えます( Paul Grokeによるコメント を参照)。この場合も、バージョンセレクターは正しいバージョンを選択できず、ファイルエクスプローラーから開くことができません。具体的には、Visual Studio内から開き、.slnファイルを保存して修正できます。この問題の詳細については this も参照してください。
.slnファイルはUTF-8-BOMファイルである必要があり、次のように開始する必要があります。
[blank line]
Microsoft Visual Studio Solution File, Format Version XX.XX[XXX...]
[description]
[description]
は、たとえば# Visual Studio Express 2012 for Windows Desktop
for VS 2012または# Visual Studio 15
for VS 2017。
2行目では大文字と小文字が区別されますが、3行目(description
)では区別されません。それがない場合、セレクターは最新のVSを開始するようです。
VisualStudioVersion
エントリは無視されます。
ただし、正しいファイルアイコンを表示するには、[description]
はexactで、大文字と小文字を区別する必要があります。