ACE OLEDB 12 is not registered on this computer
After creating Setup in installshield, when the setup is installed in some user machines, we get the error while running the application "ACE OLEDB 12 is not registered on this computer"
The application used Access (accdb) database.
We found that - whenever 32 bit office is installed on a window of 64 bit OS, this problem comes.
Then - we have to download Access database Engine and install to solve the issue.
But, many users assumes that the problem is with our application and then do not report to us.
So, we wanted to include this driver (Access database Engine) in Installshield and also install on client machine if required.
Is it possible in Installshield MSI setup building?
You can create a prq for Access database Engine and include that in the project. This will install on the client machine if required.
I am attaching the prq's for your reference, needs some modification in the 'Condition' section with regards to the 'Running on the specific platform' for x64 and x86 bit platform respectively.
Along with it you need to do the following settings:
** Or if you want a compressed MSI setup only then you can create a 'New EXE' custom action to do the installation job of Access database Engine.
Bikram - you are right from only one point of view.
Please note that the access Database Engine is different for different Office versions (Office 2010, 2016 etc) as well as for X86 or X64 architecture.
We can not keep on increasing the setup size by including all possible Access database Engine of Microsoft. Hence, this is not a viable solution for us.
If the size of the installer is a matter of concern then you can use the "Download From The Web" option instead of "Extract from Exe".
In order to use the "Download From The Web" option, we need to include those prq's in our server. Please let me know if that helps.
Then we will take it as an Enhancement request to create 4 prq's in total for Office 2010, 2016 for both X86 and X64 architecture.
I am very late in replying you as I was experimenting this and was also busy with other problems.
I could not accept your solution because of some observations -
In case of a 64 bit machine with 64 bit OS and 64 bit office installed, and the application was using MS/Access developed using VS2010 and office 2010 - it required (after trial and error) the 32 bit Access database Engine of 2007. It was so strange. A prg can not make trial and decide which one will work.
In case of a website - built with VS2019 on a 64 bit machine with 64 bit office professional 2019 with MS/Access, it required Access database engine of 2016 64 bit.
Will get back to you further, if I get a solution.
Studying on ACECORE.DLL - if including that in the application can solve the issue.
Hope to hear observation of others in this regard.
Thank you for your time and efforts.