web-dev-qa-db-ja.com

「Microsoft.ACE.OLEDB.12.0」プロバイダーは、MS ACCESSへのデータエクスポート中にローカルマシンに登録されていません

私はMicrosft.ACE.OLEDB 12.0を使用する初心者です。 WinformsアプリケーションVS 2010を作成します。

データグリッドデータをMS Accessファイルにエクスポートする関数を作成します。 Microsoft Oledbを使用しています

データグリッドデータをMS Accessファイルにエクスポートしますが、エクスポートしようとするとこのエラーが発生します

その

mS Accessへのデータ。

下の画像をご覧ください。

enter image description here

また、アプリケーションでMicrosoft.Office 12.0 Object Libraryも参照します。

enter image description here

バッチビルド構成

enter image description here

28
Ragesh S

アプリプールの「高度な設定」を変更して、32ビットプログラムを実行できるようにしました...

9
Freguz

Excelファイルを読み取るときに同様の問題が発生します。

問題の履歴:

メモリ要件のため、最近アプリケーションを32ビットから64ビットに移行しました。そのために、Windows 7を32ビットから64ビットに移行しました。しかし、それでも32ビットオフィスをマシンにインストールしました。

これは、Excelデータをアプリケーションにインポートするときにこの問題が発生したためです。

解決、

64ビットバージョンの http://www.Microsoft.com/en-us/download/details.aspx?id=13255 をダウンロードし、引数としてインストールしました。

AccessDatabaseEngine_x64.exe/passive

コードを変更せずに問題を解決できます。

注意:

64ビットOSおよび64ビットオフィスでは、この修正を行わなくても機能が正常に機能していました。この修正は、32ビットオフィスがインストールされている64ビットOS上でアプリケーションが64ビットで実行されている場合にのみ必要です。

6
Rahul Techie

ベースウェイ:

応用 : MVC C#、Win Server 64ビットの場合:

  1. インストールされているすべての32ビットオフィスを削除します。

  2. ダウンロードリンク: https://www.Microsoft.com/en-us/download/details.aspx?id=13255

  3. ダウンロード64ビットを選択して、サーバーにインストールします(プログラムをセットアップできない場合は、1ポイントを再確認してください)。

  4. アプリケーションへのアクセスを再試行してください。 ここに画像の説明を入力してください

1
Joh

microsoft Access Database Engine 2010 Redistributableをインストールすると、問題が修正されました。32ビットバージョンです。