Windows 2000 から Windows 2012 Server に移行する ASP クラシック アプリケーションがあります。
次のコードを使用してxlsファイルをインポートします
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "DRIVER={Microsoft Excel Driver (*.xls)}; IMEX=1; HDR=NO; Excel 8.0; DBQ=" & Server.MapPath("\Imports\") &"\"&fn& "; "
csvファイルの場合は次のとおりです
Set objConn = CreateObject("ADODB.Connection")
Set objRS = CreateObject("ADODB.Recordset")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strPathtoCSVFile & ";Extended Properties=""text;HDR=YES;FMT=Delimited"""
この質問の答えに従ってExcel ODBC and 64 bit server Microsoft Access Database Engine 2010 Redistributableをダウンロードしてインストールしました。
上記の 32 ビット バージョンと 64 ビット バージョンの両方を試しましたが、アプリケーション プールの設定を [32 ビット アプリケーションを有効にする] を True に変更しない限り、どちらも機能しません。False に設定すると、以下のエラーが発生します。
Microsoft OLE DB Provider for ODBC Drivers エラー '80004005'
[Microsoft][ODBC Driver Manager] データ ソース名が見つからず、既定のドライバーが指定されていません
残念ながら、True に設定すると、その Web サイトの別の部分で PDF レンダリングが中断されます。
これまでに思いついた唯一の実行可能なオプションは、この部分を 32 ビットの独自のアプリケーション プールの下にセットアップすることです。
これを 64 ビット アプリケーション プールで実行するにはどうすればよいですか?
編集:そして、誰かがだまされたハンマーを持ってくる前に、問題を解決しない関連する質問は 、Accessデータベースを使用して64ビット環境で実行されているASPです