Visual Studio 2005 ソリューションの保守を任されていますが、Visual Studio 2008 にしかアクセスできません。Visual Studio 2008 で古いソリューションを開こうとすると、IDE はソリューションを新しいバージョンに変換しようとします。
この変換中に正確に何が起こり、それを停止する方法はありますか (2005 年に開くことができるようにコードを提供する必要があるため)。
Visual Studio 2005 ソリューションの保守を任されていますが、Visual Studio 2008 にしかアクセスできません。Visual Studio 2008 で古いソリューションを開こうとすると、IDE はソリューションを新しいバージョンに変換しようとします。
この変換中に正確に何が起こり、それを停止する方法はありますか (2005 年に開くことができるようにコードを提供する必要があるため)。
これは 2005 年のソリューション ファイルの冒頭です。
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
そしてこれは2008年です:
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
それ以外は何も変更する必要はありません (私たちの場合はそのように機能しました)。
最初にプロジェクトのバックアップを作成してから、VS 2008 の移行ウィザードを実行することをお勧めします。移行中に変更されたすべてのファイルのレポートを表示するかどうかを尋ねられたら、[はい] を選択します。プロセス中に変更されたファイルのリストが表示されます。
ほとんどの場合、変更されるファイルは、バージョン番号が変更されたプロジェクト ファイルに限定されます。ただし、他に何も変更しないという厳格なルールはなく、これに依存するべきではありません。最善の方法は、私見ですが、変更済みリストに記載されている各ファイルの変更を確認することです。
変更されたファイルがプロジェクト ファイルのみの場合、VS 2008 でコードを簡単に維持できるはずです。再デプロイする必要がある場合は、プロジェクト ファイルのバージョンを元に戻すだけです。
Jon Skeet は、VS2008 ソリューションを VS2005 と共存させることについて投稿しました。
@Igor Brejcが説明したように、ソリューションファイルのバージョン番号には小さな違いがあります。ただし、プロジェクト ファイルにもいくつかの変更が加えられています。これらの変更については、気の利いた VS2005-VS2008 コンバーター アプリケーションも利用できるこの記事で説明されています。
+==========================+====================+==========================+
| Element | VS2005 | VS2008 |
+==========================+====================+==========================+
| Tools Version | absent | 3.5 |
+--------------------------+--------------------+--------------------------+
| Product Version | 8.0.50727 | 9.0.21022 |
+--------------------------+--------------------+--------------------------+
| Old Tools Version | absent | 2.0 (if converted) |
+--------------------------+--------------------+--------------------------+
| Target Framework Version | absent | 2.0 |
+--------------------------+--------------------+--------------------------+
| Bootstrapper | .NET Framework 2.0 | .NET Framework 2.0 (x86) |
+--------------------------+--------------------+--------------------------+
| Import Project | $(MSBuildBinPath) | $(MSBuildToolsPath) |
+--------------------------+--------------------+--------------------------+
上記のリンクのアプリケーションは、VS2008 ソリューションのソリューション ファイルとプロジェクト ファイルの両方を VS2005 に、またはその逆に変換します。
まず、私の知る限り、プロジェクトファイルだけが変更されています。これまでに遭遇したケースでは、基本的にバージョン番号のみを変更し、ターゲット フレームワークを挿入します。バージョンを元に戻すだけで、プロジェクト ファイルを簡単に元に戻すことができます。
変換を実行し、プロジェクト ファイル (XML テキスト ファイル) を diff ツールと比較すると、違いがすぐにわかります。