- - PR -
ビルドのあるエラーメッセージを解決できません。 MSB3187
1
投票結果総投票数:11 | |||
---|---|---|---|
(.NET | 4票 | 36.36% | |
Oracle); | 7票 | 63.64% | |
|
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-07-31 13:53
こんにちは。
知恵をお貸し下さい。 現象: 現在、VB2005 Professionalにて15個ほどのプロジェクトからなるソリューションをビルドすると以下のようなメッセージが出力され、下記の対処を行いましたが、解決しません。 「ビルドは成功しました」と表示されますが・・・。 発生のきっかけ このようなメッセージが出力したきっかけは、Oracle 11gのdllをインストールしてからです。 内容: ビルド時出力欄のメッセージ: ------------------------------------------------------------------------ C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3187: 参照アセンブリ 'C:\oracle\product\11.1.0\client_1\ODP.NET\bin\2.x\Oracle.DataAccess.dll' は、アプリケーションとは異なるプロセッサをターゲットにしています。 ------------------------------------------------------------------------ と出ます。 対応: 一度、プロジェクトの依存関係を、ソリューションをクリーンしてからやり直し、再度ビルドしても同様のメッセージが出ます。 Microsoftのリファレンス[MSB3187]も調べていますが、アプリケーションアーキテクチャーというレベルで理解できず具体的な対処がわかりません。 補足: 上記dllは Oralce 11gのdllでFramework2.0に対応しているものです。 その他のdllもFramework2.0対応のdllを参照設定しております。 よろしくご教授の程お願い申し上げます。 | ||||||||
|
投稿日時: 2008-07-31 19:34
構成に、x86 を追加して、それでビルドする
| ||||||||
|
投稿日時: 2008-08-01 13:38
Jitta 様 回答ありがとうございます。 解決しました! 今回、OracleDataAccess を9gから10gに変更してからおきました。 即ち、Oracle 10gからvb側のビルドプラットフォームを AnyCPUから私の開発環境であるx86 Windows XP Pro SP2 に合わせて x86を指定してやる必要になった・・・・ ということで正しいでしょうか? | ||||||||
|
投稿日時: 2008-08-01 22:37
それは、私にはわかりません。Oracle の資料を当たってください。 MSBuild エラー MSB3187<microsoft.com> には、こう書いてあります。
「プロセッサ アーキテクチャを一致させろ」と書いてあるわけですから、一致するような指定をしてみたら?ということです。 Oracle が、x64 アーキテクチャに対応したアセンブリを提供していないのなら、「x86」の構成でなければならない、ということになります。これは、Oracle に聞いてください。 そうすると、x64 向けには、x64 の環境を用意しなければなりませんね。ODP.NET のインストール途中で何か設定があるか、Oracle がミスっているのではないかと思います。KROWN は当たりました? 公開資料では、対象プラットフォームが「32-bit」になっていますね。x64 には対応していないのかな? → キーワードに「odp.net」で検索<oracle.co.jp> 文書番号 120871 64-bit は別に提供されているようです。→Oracle Data Access Components (ODAC) for Windows Downloads<oracle.com> |
1