[解決済み】「Microsoft.Jet.OLEDB.4.0」プロバイダがローカルマシンに登録されていない。
質問
32ビットのWindows 2008サーバーで、.NET 3.5で開発したWindowsアプリケーションを作成しました。このアプリケーションを64ビットのサーバーに展開すると、「Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine "」というエラーが表示されます。
そこで、この問題の解決策として、プロジェクトのビルドプロパティをX86に変更し、32ビットモードでビルドするようにし、32ビットマシンでプロジェクトをリビルドしています。しかし、同じプロジェクトは、他のデータベースに接続するために、他のDBドライバ(DB2、SQLなど)を使用しています。そのため、64ビットOSでアプリを再度デプロイすると、例外 " Attempted to load a 64-bit assembly on a 32-bit platform. " がスローされました。
Microsoft.Jet.OLEDB.4.0 ドライバを使用して、Excel (.xls) への読み取りと書き込みを行っています。
どのように解決するのですか?
この問題に対する解決策が見つかりました。私の質問で説明した問題は基本的に Microsoft.Jet.OLEDB.4.0 ドライバ 64bitOSの場合。
つまり、64ビットサーバーでMicrosoft.Jet.OLEDB.4.0ドライバーを使用する場合、アプリケーションを強制的に32ビットモードで構築する必要があります(これは、私がこのことを徹底的に検索したときに見つけた回答です)。 既知の問題 ) があり、私のコードの他の部分が壊れる原因となっています。
幸いなことに、現在マイクロソフトは、64ビット対応の
2010年版Officeシステムドライバ
従来のMicrosoft.Jet.OLEDB.4.0ドライバの代わりとして使用できます。これは、32ビットと64ビットの両方のサーバーで動作します。私はExcelファイルの操作に使用しましたが、どちらの環境でも問題なく動作しました。
しかし、このドライバは
BETA
.
このドライバは以下からダウンロードできます。 Microsoft Access データベースエンジン 2010 再頒布可能ファイル
関連
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み] 保護レベルによりアクセス不能になりました。
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】HRESULTからの例外:0x800A03ECエラー
-
[解決済み】Unityでゲームオブジェクトのすべての子をループスルーして破壊する方法?
-
[解決済み】Microsoft.Extensions.LoggingからILoggerを解決することができない
-
VSでscanfエラーを恒久的に解決するには、ソースファイルを作成し、自動的に#define _CRT_SECURE_NO_WARNINGS 1を追加してください。
-
[解決済み] CLSID {XXXX} を持つコンポーネントの COM クラスファクトリの取得は、次のエラーにより失敗しました: 80040154。
-
[解決済み] Microsoft.ACE.OLEDB.12.0' プロバイダがローカルマシンに登録されていません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】GDI+、JPEG画像をMemoryStreamに変換する際にジェネリックエラーが発生しました。
-
[解決済み] エンティティタイプ <type> は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】ソケットのアドレス(プロトコル/ネットワークアドレス/ポート)は、通常1つしか使用できない?
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】値をNULLにすることはできません。パラメータ名:source
-
[解決済み】C#のequal to演算子でtextとvarcharのデータ型は互換性がない
-
[解決済み】WSACancelBlockingCallの例外について
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】エラー「必要なフォーマルパラメータに対応する引数が与えられていない」を解決する?
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である