Could not find installable ISAM.

I got the "Could Not find installable ISAM error" while uploading an Excel file in my application. The connection string uses the Microsoft.Jet.OLEDB.4.0 provider with following parameters Provider=Microsoft.Jet.OLEDB.4.0;Excel 8.0;
Extended Properties=HDR=No; IMEX=1.

I checked the registry entries as mentioned in the "Retrieving Data from Excell 2003-Could Not Find installable ISAM" post and even registered the "Msexcl40.dll" again. Even then I got the "Could Not find installable ISAM error". So I restarted the IIS Server. Even then the problem persists. What else could be the problem?

Thanks and Regards,

Little

[733 byte] By [Little] at [2008-1-10]
# 1


This error will also be generated when the syntax of the connection string is incorrect. This commonly occurs when using multiple Extended Properties parameters. Below is an example:

ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=e:\My Documents\Book20.xls;Extended Properties=""Excel 8.0;HDR=NO;IMEX=1"""

PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 2

If the dll's are registered properly and the connection string is in proper format but both providers Micosoft.Jet.oledb Versions 4.0 and 3.51 are present on the Server could this cause the problem.

Thanks and Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 3

You can have multiple versions of the Jet OLEDB provider installed. Could you post the exact syntax of your connection string?
PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 4

The connection string is of the format:

"Provider=Microsoft.Jet.OLEDB.4.0;Excel 8.0; Extended Properties=HDR=No; IMEX=1;Data Source=" & App.Path & "\..\Upload " & "ExcelFileName & ".xls"

where ExcelFileName is the name of the Excel file.

Thanks & Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 5


I see some problems with the syntax. Try the following instead:

ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" App.Path & "\..\Upload" & ExcelFileName & ".xls" & ";Extended Properties=""Excel 8.0;HDR=NO;IMEX=1"""

I'm assuming your data source is correct, although I can't tell by looking at your connection string whether ExcelFileName is preceded by a back slash. In any event, the Extended Properties argument would not be evaluated properly in the example you posted.

PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 6

The ExcelFileName in the connection string contains the backslash and the excel filename.

The connection string posted by me does not cause any trouble in the development server but causes error "Cannot find installable ISAM" in the uat server where some service packs and hotfixes have been installed. Right now I don't know which ones. But I found that the version of the "Msjet40.dll" in development server is "4.0.8618.0" while that in uat server is "4.0.9025.0". Can this cause the problem?

Thanks and Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 7


OK, well I copied and pasted the connection string you posted and can't execute it because there is a syntax error, so you must be using something that's different.

Assuming that it runs fine on one system and not another I would say that you definitely have a configuration problem with respect to Jet and the Excel ISAM driver. What account did you log on to the server with when you re-registered the Excel ISAM driver?

PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 8

Logged in as the Server administrator and re-registered the "msexcl40.dll". Will reinstalling MDAC 2.8 help?

Thanks and Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 9

Which version of the Windows OS are you using?
PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 10

We are using Windows 2000 Server SP4 Update RollUp1 , MDAC version 2.8 and the Microsoft Jet 4.0 Database Engine that comes with SP4 Update RollUp1.

We tried reinstalling MDAC and restarted the Server. But that doesn't solve the problem.

Thanks and Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 11


The Excel ISAM is actually intalled with Jet so I wouldn't expect an MDAC fix to resolve the issue.

Have you checked for multiple versions of Msexcl40.dll? I believe the version that your installation should be using is 4.0.9025.0.

PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 12

The version of Msexcl40.dll is 4.0.9025.0. Will reinstalling the Jet component make a difference?

Thanks & Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 13


If you can back out the update rollup you can try re-installing. Otherwise it may tell you that the latest version is already installed.

I seem to recall there was a way to resolve this issue through an Office install fix as well, but I'm assuming that you don't have Office installed on this machine.

PaulPClementIV at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...
# 14

Office is not installed on this machine. If Office was present on the machine and uninstalled could this cause the problem.

Is there any other way to read an Excel file besides using the Microsoft.Jet.OLEDB.4.0 provider?

Thanks and Regards,

Little

Little at 2007-10-3 > top of Msdn Tech,.NET Development,.NET Framework Data Access and Storage...

.NET Development

Site Classified