「ほっ」と。キャンペーン
(.Net)mdbを使うプログラムで Jet.OLEDB.4.0 の例外が出た

.Netでmdb(Access)をデータベースともつプログラムを作ってました。
このプログラムはターミナルサーバ(Windows Server 2003 x64)上で動かします。

開発用PC(XP x86)では問題なく動いてたので、実環境となるターミナルサーバ上で動かすとDB接続部分で下記のような例外が発生しました。

'Microsoft.Jet.OLEDB.4.0' プロバイダは
ローカルのコンピュータに登録されていません


ググるとこちらここで答えが載ってました。

そういえば、ビルド構成は Any CPU にしてました。つまり、x64環境では64bitで動くような構成になってたわけですね。
しかし、x64のWindowsではx64用の JET.OLEDB プロバイダは無く、呼び出し時にエラーとなった模様です。

で、回避策としては .Net アプリケーションを x86 構成でビルドすることです。
そうすると32bit版の OLEDB プロバイダを使ってくれるようです。
[PR]
by jehoshaphat | 2010-01-08 00:55 | .Net開発 | Trackback | Comments(0)
トラックバックURL : http://jehupc.exblog.jp/tb/11922188
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。


<< (Linux)Java Web... ダイナミックディスクとICH9... >>