64 ビット Windows 2003 で IIS を構成した後、ASP ページを実行して、アクセス データベースに接続するコードがある場合は、次のようにコードをコピーします。
ADODB.接続エラー '800a0e7a'
プロバイダーが見つかりません。プログラムが正しくインストールされていない可能性があります。
/Web サイトのコンテンツ管理データベースに接続します。asp、行 2
理由: IIS は 64 ビット モードで実行され、64 ビット モジュールのみをロードでき、32 ビット モジュールはロードできません。 Access データベースにアクセスする Jet エンジンは 64 ビットではなく 32 ビットのみなので、IIS でロードできません。
解決策: 32 ビット ジェット エンジンを呼び出せるように、IIS を 32 ビット モードで実行します。
解決策: コマンド ライン ウィンドウに次のように入力します。
cscript C:/inetpub/adminscripts/adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
上記の方法の悪影響: IIS は 32 ビット モードで実行するように変更されているため、32 ビット モジュールのみをロードできます。変更前に IIS が他の 64 ビット モジュールをロードしていた場合、このモジュールは変更後はロードされなくなります。このモジュールの機能を引き続き使用したい場合は、このモジュールの 32 ビット バージョンを見つけてロードするしかありません。
IIS を再び 64 ビット モードで実行する場合は、次のように入力します。
cscript C:/inetpub/adminscripts/adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0