プロが教えるわが家の防犯対策術!

 VB2008Expressでソフト作成していましたが、Windows2000でも動かす必要が発生し、VB2005Expressに環境を変更(ダウングレード?)しました。VB2008ExpressがWindows2000に対応していないというのに気がつきませんでした。
 すると、VB2008Expressで作成していたソリューションファイルが開きません。以下のエラーが表示され、それで終わりです。
『選択されたファイルはソリューションファイルですが、このアプリケーションより新しいバージョンで作成されたため、開くことができません。』

 何らかの方法でVB2008Expressのソース一式をVB2005Expressで利用することはできないでしょうか?
(実行形式のファイルだけでなく開発環境そのものからWindows2000で動かす必要に迫られています。)
 VB2008ExpressとVB2005Expressとで、相互に使える必要はないです。一旦VB2005Expressに持って行ければ、それはそのままでOKです。

 作成したソフトはそう大規模なモノはないので、方法がなければベタですが、一から作り直そうかと思ってます。

A 回答 (2件)

VB2008と同じソリューション/プロジェクトの構成を先に作ってしまいます


このとき Formなどを必要とするものは最低1つのみを追加しておきます
次に、2008側のソースを各プロジェクトごとにエクスプローラなどでコピーしておきます
VB2005で生成した同名ファイルも上書きしておきます

VB2005でソリューション/プロジェクトを選択して
既存のファイルの追加操作をします
これで 2008固有の機能を使用していなければコンパイルできるようになるると思います

ソースをコピーしないで 2008のソースをそのまま追加すると
2008のファイル位置にあるソースでコンパイルしようとします
2008/2005で完全に同じソースを使うのであればこの方法でもいいのですが
2005側だけ修正したい場合(またはその逆)上記のようにソースを先にコピーしておきましょう

この回答への補足

 回答ありがとうございます。
 VB2008と同じソリューション,プロジェクトを作成し、Form1のみ作って保存しました。
 その後、既存ファイルの追加をしようとしましたが、やはりFormのデザインが持ってこれません。以下のエラーとになりました。
『デザイナは 218 行のコードを処理できません。 Me.ShapeContainer1.Location = New System.Drawing.Point(0, 0) メソッド 'InitializeComponent' 以内のコードは、デザイナによって作成されたので手動では変更できません。変更を削除して、デザイナを再度開いてください。』

 コンポーネントそのものはプリミティブなものしか使っていないつもりです。
 Formのデザインの内容を持ってくるにはどうしたらよいでしょうか?

補足日時:2009/05/17 17:05
    • good
    • 0

ソースファイルなどの数がそれほどでもなければ、ソリューションとプロジェクトだけをVB2005Expressで新規作成し、プロジェク

トファイルなどを除いたものをフォルダにコピーしてから、「追加」-「既存の項目...」とやってはどうでしょうか?

この回答への補足

 回答ありがとうございます。
 やってみましたが、Formでエラーが沢山出てきます。以下は一例ですが、これによりFormがさっぱり出てきません。
『警告 1 デザイナは 217 行のコードを処理できません。 Me.LineShape1.Name = "LineShape1" メソッド 'InitializeComponent' 以内のコードは、デザイナによって作成されたので手動では変更できません。変更を削除して、デザイナを再度開いてください。』

 VB2008で、コンポーネントを配置・設定した際、通常の設定以外のところでVB2008で新規に追加されたプロパティが設定されている感があります。
 そのため、ほぼ全てのコンポーネントでエラーが発生し、肝心のFormが全く出てきませんでした。
 Formのみ手入力して、プロパティを合わせた後で、コードをコピーしたほうが(手はかかりますが)手早いかなと思いました。

補足日時:2009/05/17 16:49
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!