VS2012ソリューションからVS2010への変換


127

私はVS 2012のVBプロジェクトで作業しており、終了後にセットアッププロジェクトを追加しようとしています。

(VS2010以降にセットアッププロジェクトが中止されたため)見つからなかったため、VS2010に切り替えましたが、問題はプロジェクトが開かず、次のメッセージが表示されることです。

選択したファイルはソリューションファイルですが、このアプリケーションの新しいバージョンによって作成されたため、開くことができません。

私はこの記事を試してみました:http : //www.codeproject.com/Tips/80953/Converting-VS2010-Solution-to-VS2008 と2012から2010に変換しようとしましたが、同じメッセージが表示されます。


VS2010を使用して単一のセットアッププロジェクトを作成してみませんか-私が覚えている限り、プロジェクトを含める必要はなく、自分でファイルを追加できます
Carsten

わかりました、これはアイデアの回避策になる可能性があります。コンパイル/デプロイメントを高速化するために、常にプロジェクトのセットアップを同じソリューションに
含める

1
vs2010にsp1はありますか?2012プロジェクト/ソリューションファイルを開くには、Service Packが必要だと思います。
Georgi Stoyanov 2012

回答:


306

私も同様の問題に直面しました。私はググったが、解決策を見つけることができませんでした。だから私は自分で試してみました、そしてここに私の解決策があります。

メモ帳でソリューションファイルを開きます。2つの変更を行う

  1. 「Format Version 12.00」を「Format Version 11.00」に置き換えます(引用符は不要)。
  2. "#Visual Studio 2012"を "#Visual Studio 2010"(引用符なし)に置き換えます。

これがあなたにも役立つことを願っています..........


3
これを行うことの欠点はありますか?それは本当であるには余りにも簡単に思えます。
kbeal2k

4
それは私にとってはうまくいきませんでした、それでも互換性がないと維持しましたか?
David

3
このヒントをありがとう!ASP.NET Web APIプロジェクトのダウングレードでも機能します。フォーマットバージョン12.00をslnのフォーマットバージョン11.00に適合させ、csprojのTargetFrameworkVersion要素を4.5> 4.0から調整することに加えて、web.configのhttpRuntime要素を削除し、web.configのコンパイルtargetFramework属性を4.5> 4.0から調整する必要がありました
AardVark71

2
素晴らしいですが、下位互換性がないとは信じられません。
スティーブンマービー2013

1
私はVS2013を使用してこの罠に陥りました-形式を11に戻し、VS2010ですべてが再び問題なくなりました-ありがとう!
Surfbutler 2013年

121

Bhavinの優れた答えについて詳しく説明します-ソリューションファイルの編集は機能しますが、VS2012プロジェクトのデフォルトの.NETバージョンとして.NET 4.5を選択していて、VS2010環境がそうでない場合は、互換性のないエラーが発生する可能性があります(Davidが報告したように)それをサポートします。

これをすばやく修正するには、テキストエディターでVS2012 .csprojファイルを開き、TargetFrameworkVersionを(4.5から)4.0に変更します。その後、VS2010は「編集された」ソリューションとプロジェクトを喜んでロードします。

同様に、.NET 4.5への参照を持つapp.configファイルを編集して、.NET 4.0環境で実行できるようにする必要があります。


5
これとバービンの答えは完璧に機能しました。あなたがた両方に感謝します。
desaivv 2013

2
このヒントをありがとう!ASP.NET Web APIプロジェクトのダウングレードでも機能します。フォーマットバージョン12.00をslnのフォーマットバージョン11.00に適合させ、csprojのTargetFrameworkVersion要素を4.5> 4.0から調整することに加えて、web.configのhttpRuntime要素を削除し、web.configのコンパイルtargetFramework属性を4.5> 4.0から調整する必要がありました
AardVark71

さらに、私が行ったように、.vcprojファイルを確認し、プラットフォームツールセットをv110からv100に変更する必要がある場合があります。
Xyon

2

同様の問題があり、上記の解決策はどれも機能しなかったため、常に機能する古いスタンバイを使用しました。

  1. プロジェクトを含むフォルダの名前を変更します
  2. 2010と同じ名前の新しいプロジェクトを作成する
  3. 2つのフォルダーを比較し、->
  4. すべてのソースファイルを直接コピーする
  5. bin / debug / releaseなどを無視する
  6. .csprojを比較し、関連するすべての行をコピーします。
  7. .slnファイルにプロジェクトが1つしかない場合は、無視してください。複雑な場合は、同様に比較します。

それはあなたがそれで10分を費やし、それを得ることができない場合、ほとんど常に機能します。

古いバージョン(2008、2005)での同様の問題については、通常、.csprojのバージョンを変更し、.slnのバージョンを変更するか破棄するだけで問題を回避できますが、これは2013では機能しないようです。 。


2

最も簡単な解決策は、..... vs2013でウェブサイトを開き、 Debug-> WebsiteProperties(最後のオプション)に移動して、新しいウィンドウが開きます。

このウィンドウで[ビルド]オプションに移動し、.netフレームワークのバージョンを4.5から4.0に変更します。次に[ok]を選択します。[注:この手順は、プロジェクトにvs2013との依存関係がない場合にのみ機能します...]

今vs2010であなたのウェブサイトを開きます


1

ソリューションではなくプロジェクトファイルを開きます。プロジェクトはウィザードによって変換され、変換後、プロジェクトをビルドすると、新しいソリューションがVS2010ソリューションとして生成されます。


1

VS2010のソリューションはVS2012でサポートされています。VS2012のソリューションはVS2010ではサポートされていません->一方向のアップグレードのみ。VS2012はセットアッププロジェクトをサポートしていません。VS2010 / VS2012互換性の詳細については、こちらをご覧くださいhttp ://msdn.microsoft.com/en-us/library/hh266747(v=vs.110).aspx


1
そのドキュメントを読むと、2つの間でうまく機能するものがあることがわかります。つまり、VS2012でプロジェクト/ソリューションを作成し、VS2010で問題なく開くことができます。ただし、このドキュメントでは、2012年に使用した場合、2010年に開くことができないものがあることを示しています。stackoverflow.com/ questions / 10902865 / … は、もう1つの良い簡単な答えです。
brazilianldsjaguar

注意深く読むと、わずかな違いが見られるはずです。VS2010で作成されたプロジェクトはVS2012で機能し、他の方法では機能しません。"... Visual Studio 2010 SP1で作成されたプロジェクトを開くことができます..."
Piotr Lewandowski 14年

0

私のために働いた簡単な解決策。

  1. Windows用のVimエディターをインストールします。
  2. Vimエディターを使用してVS 2012プロジェクトソリューションを開き、Visual Studioソリューション10を対象とするバージョンを変更します。
  3. Visual Studio 2010 ..でソリューションを開き、作業を続行してください;)

なぜメモ帳だけでなくVimなのか?
Zac
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.