Click here to Skip to main content
15,887,485 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi I have a WinForms application which is using Microsoft.Jet.OLEDB.4.0 as one of its components. I have tested on my local PC and it runs without any error. But when I have deployed it into server, it returns me the error message as above title.
My application is compiled in 32-bit mode and it is not web project.

I have tried to search online but found no other special case other than compiled my application into 32-bit(which I did) and set "Enabled 32-bit application" in IIS(my application is not web project).

Is there any other possible solution?
I have checked on the server side, there are no Microsoft.Jet.OLEDB.4.0 driver installed, is there any way I can include the driver as part of my application but I am not sure whether it can works this way around or does the driver was intended for the destination which is my server?

What I have tried:

1. Searched online for special case that might similar to my issue.
Posted
Updated 17-Apr-17 18:30pm

1 solution

If you're hell-bent on using the JET engine, you have to install the Access 2003 Runtime on the server machine. Good luck downloading something that old.

OR, you could change your connection string to use the ACE engine instead and then you just have to install the Access 2013 Runtime[^]. If your app is compiled x86-only, make sure you install the 32-bit version of the runtime.

Access connection strings - ConnectionStrings.com[^]
 
Share this answer
 
Comments
Jamie888 18-Apr-17 1:57am    
Thank you for your respond sir. I have changed to Microsoft.ACE.OLEDB.12.0 as I found no solution for Microsoft.Jet.OLEDB.4.0. This application was developed around 10 years ago so I think it is time to give it a fresh change and update. I am trying on it right now and I will keep this post updated on any updates. Thanks again for the info.
Maciej Los 18-Apr-17 2:38am    
Dave, there's no need to install Access 2003 Runtime. As you mentioned, installing Access 2013 (or 2010) would be enough. At this moment i do not understand what OP is trying to say us. Is He using WinForms on IIS server?
Jamie888 18-Apr-17 3:30am    
Sorry for the confusing explanation above. The reason I was trying on IIS was due to I just wanna give it a try(though it is near to zero chances of success as IIS is for Web project). I have changed into using ACE.12.0 but the server still returns me the similar error. I will try to install the "Microsoft Access Database Engine 2010 Redistributable" package to see whether it will solve the issue.
Dave Kreskowiak 18-Apr-17 9:56am    
A WinForms application has nothing to do with IIS at all so I don't know what you think you were "going to try" nor accomplish with this.
Dave Kreskowiak 18-Apr-17 10:00am    
You have to get the version number correct in the connection string. For the Access 2013 Runtime, it would be "Provider=Microsoft.ACE.OLEDB.15.0;..."

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900