アセンブリA_CLASS、バージョン2.0.0.0、Culture= Neutral、PublicKeykeykon= nullを見つけることができません

StackOverflow https://stackoverflow.com//questions/9693454

質問

プロジェクトをVS2005からアップグレードしようとしています。C ++ DLL、A.DLLを参照するC#プロジェクトに依存するVB.NETプロジェクトBです。「アセンブリA_CLASS、バージョン2.0.0.0、Culture= Neutral、PublicKeytoken= null」というエラーが表示されています。C ++プロジェクトのターゲットプラットフォームは4.0であり、そのプロジェクトは他のプロジェクトに依存しているため、ダウングレードできません。しかし、vb.netプロジェクトのプラットフォームを4.0に設定しました。バージョン2.0.0.0は他に何を参照していますか?私は真新しいプロジェクトを作成しようとし、私が正常に構築した後にそれにVBフォームを追加しようとしました。C ++ DLLは出力ディレクトリにありますが、VBプロジェクトがそこに見つからない場合は、この点にはなりません。ビルド中私はエラーを取得しません(しかしフォームはロードされません)、または2つのエラーを取得します(各フォームに1つ):

error MSB3103: Invalid Resx file. Could not load file or assembly 'A-class, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format. Line 136, position 5.
.

私を助けてください、私に提案をしてください、私はどこへの見た目がわかりません。ありがとうございました。

役に立ちましたか?

解決

「誤った形式でプログラムをロードしようとしました」

99%これは、64ビットツールを使用して32ビットアセンブリをロードしようとしているか、逆の場合もあります。エラーメッセージ内のバージョン番号は、ロードしようとしているアセンブリのバージョン番号を意味します。ターゲットを絞っている.NETバージョンとは関係ありません。この場合、リソースコンパイラは問題があるものであるようです。

任意のCPUの代わりにx86を明示的に構築して、問題を解決するかどうかを確認してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top