DAO を使用したアプリケーションを64bit環境で実行するとエラーになる件
2018/12/19
文書番号:20812
今更新規でアプリケーションを作成してDAO を使用することはありませんが、既存のシステムをバージョンアップして64bitの環境にしたいことはあると思います。
しかし、今回もそのような事案ですが、元々DAO で SQL Server へ接続していたアプリケーションを Windows 10 x64 環境で動くようにしようとしたところ、実行時エラーが発生しました。
====================================================
CLSID {00000100-0000-0010-8000-00AA006D2EA4} を含むコンポーネントの COM クラス ファクトリを取得中に、次のエラーが発生しました: 80040154 クラスが登録されていません (HRESULT からの例外:0x80040154 (REGDB_E_CLASSNOTREG))。
====================================================
通常、このようなエラーが発生する場合はregsvrされていなかったりすることが多いのですが、今回はそうではありませんでした。
Microsoft のサイト「データアクセステクノロジのロードマップ」(調べていたときにはあったのですが見つかりませんでした)によると、DAOは64bit環境はサポートしないことになっていました。
プロジェクトをコンパイルする際にターゲットCPUを「x86」にすることでエラーなく動作しました。