質問: PCのOSはwindows7,Access2016とVisual studio2017 communityを使用しております。 windows form appで、アクセスのデータベースを使用するため、 https://msdn.microsoft.com/ja-jp/library/ms171893.aspx という記事を参考に、手続きを進めていましたが、 9.[サーバー名またはファイル名] で、接続する .accdb ファイルのパスと名前を指定し、[OK] をクリックします。 という段になって、OKボタンを押したところ、 microsoft.ace.oledb.12.0 プロバイダはローカルのコンピュータに登録されていません。 というメッセージが現れ、次の段へ進めず、困っています。 Access2016ランタイムをインストールすると良いという話を知り、インストールしてみましたが、何の変化もありません。 どうすれば、次の段へ進みますか。
回答: Microsoft Access Database Engine 2016 には 32-bit 版と 64-bit 版があります。以下の記事の Details を見てください。 Microsoft Access Database Engine 2016 Redistributable 一方 Visual Studuo には 32-bit 版しかありません。 もし 64-bit 版をインストールしたとすると、Visual Studio からは接続できません。想像ですが原因はそのせいではないかと思います。 もし上記の想像が当たっているとすると、32-bit 版と 64-bit 版は同じ PC で共存できませんので(裏技的な手はあるそうですが)、64-bit 版をアンインストールして 32-bit 版をインストールする以外に解決策はないです。 32-bit / 64-bit の話については、ちょっと古い記事ですが、以下の NSDN blog が参考になると思います。 Part 1. 64 ビット Windows OS の基本知識 Part 2. .NET Framework 2.0 アプリケーションの 64 ビット対応