Oracle dbへの接続に使用する.NET winforms
アプリケーションがあります。ODP
ODP のインストールは 32 ビットですWin 7 64 bit machine
。開発マシンでプラットフォーム ターゲットを x86 に設定していますが、問題なく動作します。しかし、アプリケーションをテストするWin Server 2003 64 bit machine
と、例外が発生しました
The type initializer for 'Oracle.DataAccess.Client.OracleCommand' threw an exception.
UNHANDLED EXCEPTION STACK TRACE:at Oracle.DataAccess.Client.OracleCommand.Dispose(Boolean disposing)
at System.ComponentModel.Component.Finalize()
UNHANDLED EXCEPTION SOURCE: Oracle.DataAccess
UNHANDLED EXCEPTION INNER EXCEPTION: Oracle.DataAccess.Client.OracleException The provider is not compatible with the version of Oracle client at Oracle.DataAccess.Client.OracleInit.Initialize()
at Oracle.DataAccess.Client.OracleCommand..cctor()
UNHANDLED EXCEPTION DATA: System.Collections.ListDictionaryInternal
UNHANDLED EXCEPTION MESSAGE: The type initializer for 'Oracle.DataAccess.Client.OracleCommand' threw an exception.
そして、プラットフォーム ターゲットをAny CPU
Windows 7 64 ビットに設定すると、例外が発生します。
Could not load file or assembly 'Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. An attempt was made to load a program with an incorrect format.
開発マシン (Win 7 64 ビット) の ODP バージョンは11.2.0
、テスト マシン (Win Server 2003 64 ビット) も 11.2.0 です。
両方のマシンでアプリケーションを実行するにはどうすればよいですか? 何か案が?