ThinkGeo.com    |     Documentation    |     Premium Support

Exception on Windows Server 2008

I've been using MapSuite on my development machine successfully (32-bit XP using Visual Studio's inbuilt webserver) and have managed to get a working system together. I deployed to our test server (Windows Server 2008, 64 bit edition with IIS 7), and when I attempt to access the page containing the MapSuite control I get the following error:



Error Message: The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
Stack Trace:    at System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper)
   at System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
   at System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.OleDb.OleDbConnection.Open()
   at ThinkGeo.MapSuite.Core.ShapeFileFeatureSource.x0784dc0c90caa3a3(String x0db4c6e61a6e6009)
   at ThinkGeo.MapSuite.Core.ShapeFileFeatureSource.ExecuteQueryCore(String sqlStatement)



From the error message it looks like MapSuite is using Jet 4 to access the shape file database data and is failing. I thought that Windows Server 2008 would have had built-in support, but maybe I'm wrong.  I could simply download and install the 64-bit drivers, however I don't want to mess around with the test server unnecessarily and would like to know that this is a definite problem first.



Iain, 
  
 Thanks for your information about this post. 
  
 There is one thing I need to confirm with you first. Whether you have used the ShapeFileFeatureSource.ExecuteQuery method in your Web app? 
 If so, and the problem is caused by that definitely. 
 ShapeFileFeatureSource.ExecuteQuery function isn’t supported for 64 bit system in our MapSuite products, because the Microsoft.Jet.OLEDB 4.0 isn’t supported on a 64 bit system. 
  
 Khalil

Yres, I was using the ShapeFileFeatureSource.ExecuteQuery method until I noticed the following at the end of the readme file: 
  
 Note: 
 ShapeFileFeatureSource.ExecuteQuery function isn’t supported for 64 bit system, because the Microsoft.Jet.OLEDB 4.0 isn’t supported on a 64 bit system. 
  
 I’ve now stripped out the ExecuteQuery calls and replaced them with routines which pull out a complete list of Features then use Linq to extract the required records. This isn’t ideal but appears to work.

Iain, 
  
 Yes, We have clarified that in the Readme document.  
 Sorry for the inconvenience caused to you. 
  
 Khalil