OLE Exception -2147467259 beim Auslesen einer Exceldatei

Alarion

Grünschnabel
Hallo!

Es geht um das Auslesen einer Exceldatei in einer Webanwendung mit OLE in C#. Hier erst einmal ein paar Informationen vorab:

Ich entwickle lokal unter Window XP, Visual Studio 2005, C#. Office 2003 und alle aktuellen Patches sind auch installiert. Der Webserver läuft unter Windows 2003 Server mit .NET Runtime (also ohne Visual Studio und Office ...). Der Server ist auch aktuell gepatched.

Folgenden Code habe ich zum Auslesen einer Exceldatei geschrieben:

Code:
//--------------------------- Code -------------------------------------------
string strPfad = "C:\download\";
string strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + this.strPfad + ";" + "Extended Properties=Excel 8.0;";
string strTablename = "";

DataTable dtSchema = new DataTable();
OleDbCommand olecmSelectCommand = new OleDbCommand();
OleDbDataAdapter oleadAdapter = new OleDbDataAdapter();
DataTable dtTempDatatable = new DataTable();

OleDbConnection olecnConnection = null;
olecnConnection = new OleDbConnection(strConnString);

olecnConnection.Close();
olecnConnection.Open();

dtSchema = olecnConnection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
strTablename = (System.String)dtSchema.Rows[0]["TABLE_NAME"];
olecmSelectCommand = new OleDbCommand("SELECT * FROM [" + strTablename + "]", olecnConnection);
oleadAdapter.SelectCommand = olecmSelectCommand;
oleadAdapter.Fill(dtTempDatatable);

olecnConnection.Close();
olecnConnection.Dispose();

olecnConnection = null;
oleadAdapter.Dispose();
olecmSelectCommand.Dispose();
dtSchema.Dispose();
//---------------------------------------------------------------------------

Nun zum Problem. Der Code funktioniert auf dem Server wunderbar. Aber wenn ich ihn lokal (z.B. zum Debuggen und Entwickeln) ausführe, erhalte ich eine OLE Exception. Ich konnte die Exception bis zum Öffnen der OLE- Verbindung (olecnConnection.Open()) verfolgen. Dort wird die Exception geworfen. Warum funktioniert es auf dem Server und bei mir lokal nicht? Ich bitte um Hilfe!
Code:
ex: {"Unbekannter Fehler"}
ErrCode: -2147467259
Errors: {System.Data.OleDb.OleDbErrorCollection}
Source: "Microsoft JET Database Engine"
StackTrace: " bei System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)\r\n bei System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)\r\n bei System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)\r\n bei System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)\r\n bei System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)\r\n bei System.Data.OleDb.OleDbConnection.Open()\r\n bei . in :Zeile 49.\r\n bei . in :Zeile 100."

Alarion.
 

Neue Beiträge

Zurück