11

ASP.NET を使用して、Excel テンプレートを更新する必要があります。

サーバーは Windows 2008 を 64 ビット モードで実行しています。

次のコードを使用して、Excel ファイルにアクセスしています。

    ...
    string connection = 
@"Provider=MSDASQL;Driver={Microsoft Excel Driver (*.xls)};DBQ=" + path + ";";
    ...

アプリケーション プールが [32 ビット アプリケーションを有効にする] に設定されている場合、コードは期待どおりに機能します。ただし、使用している oracle ドライバーは 64 ビットしかないため、失敗します。

[32 ビット アプリケーションを有効にする] が false に設定されている場合、Excel コードは次のエラーで失敗します。

データ ソース名が見つからず、既定のドライバーが指定されていません

助言がありますか?

4

5 に答える 5

7

Microsoft Office チームが64 ビット ドライバーをリリースしました

于 2010-05-11T18:11:46.410 に答える
2

Microsoftは2008/04/04に64ビットOLEDBFORODBCをリリースしました http://www.microsoft.com/downloads/details.aspx?FamilyID=000364db-5e8b-44a8-b9be-ca44d18b059b&DisplayLang=en

これで、すべての64ビットを実行できるようになります。試して結果をお知らせください。個人的には、Microsoftが64ビットのJet Oledb 4.0をリリースする必要があると思います。開発チームがそれを実行する時間がない場合は、codeplex.comに配置してください。他のプログラマーにやらせてください。

于 2009-06-02T17:26:19.397 に答える
2

2010 Office System Driver Beta: Data Connectivity Components Linkもあります。これにより、64 ビット環境から Excel 2007 (XLS) を開くことができます。

このダウンロードでは、Microsoft Office 2010 Beta ファイルからデータを読み取るために Microsoft Office 以外のアプリケーションで使用できる一連のコンポーネントがインストールされます。

接続文字列

@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " + filePath + ";Extended Properties=\"Excel 12.0;HDR=YES;\""
于 2010-03-25T22:38:56.987 に答える
-1

32ビットのOracleドライバをインストールし、32ビットのアプリケーションを有効にしますか?

于 2009-06-11T10:18:43.237 に答える