2017-03-27 7 views
0

約10年前に書かれたWebアプリケーションがあります(VB.NET/ASS)。
それはdBaseの5つのファイルに接続するには、次の接続文字列を使用しています。WebアプリケーションからdBaseファイルに接続できません

Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=[SOURCE_PATH]; 

は、これは年間の偉大な仕事をしています。 は、今、私たちは、64ビットサーバーにこのアプリを移動しているが、この接続は、今私が

Microsoft.Jet.OLEDB.4.0; or Microsoft.Jet.OLEDB.12. 
に上記の接続文字列を変更することを含む多数のスレッドで多数の提案を、読んだ

ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 

私に与えています

しかしそれは何もしなかった。

私もTRUEに、Webサーバー上のアプリケーションプールで32ビットアプリケーションの設定を有効に設定してみましたが、それは

HTTP Error 503. The service is unavailable 

になった誰かが正しい方向に私をしてください指すことはできますか?

+0

32ビットまたは64ビットのアプリですか?ほぼ確実に32ビットバージョンのドライバが利用できるので、アプリケーションを使用するには32ビットである必要があります。 – jmcilhinney

+1

また、ODBC接続文字列からOLE DB接続文字列に切り替えると、すべてのADO.NETオブジェクトを 'Odbc'から' OleDb'に変更する必要がありますが、まだ64ビットバージョンのJetは残っていません。 – jmcilhinney

+0

アプリは32ビットです。 – Tamila

答えて

1

あなたはまた、OLEDBオブジェクトに、ODBCオブジェクト(データセットなど)からあなたのコードを変更する必要が

Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=[SOURCE_PATH]; 

から

Driver={Provider=Microsoft.ACE.OLEDB.12.0;Data Source=[SOURCE_PATH];Extended Properties=dBASE 5.0;} 

に接続文字列を変更してください。

+1

これはまさに私が必要としていたものでした!これらの2つのステップを組み合わせることで、私の問題は解決しました。 – Tamila

関連する問題