views:

2302

answers:

5

using ASP.NET I need to update an excel template.

Our server is running Windows 2008 in 64 bit mode.

I am using the following code to access the excel file:

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

IF the application pool is set to Enable 32 bit applications the code works as expected; however the oracle driver I am using fails as it is only 64 bit.

If Enable 32-bit applications is set to false the excel code fails with the error:

Data source name not found and no default driver specified

Any suggestions?

+1  A: 

There are no office drivers for 64bit released.

The (currently) last post at this link: MSDN Forum details a cumbersome and ugly workaround. You could also replace the Windows Service with a COM exposed assembly, if you wish. Still ugly though. :)

Robert Jeppesen
There seems to be a solution to this problem now through 2010 Office System Driver Beta: Data Connectivity Components
AlexanderN
+1  A: 

Microsoft release a 64bit OLEDB FOR ODBC in 2008/04/04 http://www.microsoft.com/downloads/details.aspx?FamilyID=000364db-5e8b-44a8-b9be-ca44d18b059b&DisplayLang=en

Now you should able to run everything 64bit, can u try it and let us know the result and personally I think Microsoft should release a 64bit Jet Oledb 4.0, if the development team has no time to do it then just put it in codeplex.com and let other programmers do it.

A: 

Install the 32-bit Oracle driver and enable 32 bit applications?

Erik E
It's perhaps better to stick to what microsoft provides for 64 bit environments.
AlexanderN
A: 

There is also 2010 Office System Driver Beta: Data Connectivity Components Link which has allowed us to open Excel 2007 (XLS) from a 64bit environment.

This download will install a set of components that can be used by non-Microsoft Office applications to read data from Microsoft Office 2010 Beta files

Our connection string

@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " + filePath + ";Extended Properties=\"Excel 12.0;HDR=YES;\""
AlexanderN
A: 

The Microsoft Office team has just released a 64-bit driver: http://www.microsoft.com/downloads/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en

Matthew Skelton