Firstly. please forgive me for this lengthy question.
I have developed a C# Winforms app. which must be ClickOnce-deployed. The target machines can be XP, Vista, or Win7, and they can be of x86 or x64 flavors. The database is an external .mdb and the data layer originally was using the Microsoft.Jet.OLEDB.4.0 provider. Additionally, the solution contains Crystal Reports. A problem arose when deploying to 64-bit machines. While the Crystal Reports bootstrapper manifest contains the proper elements to decide whether to install the x86 or the x64 components for Crystal, and does install correctly, the Jet engine is another story. Jet.OLEDB.4.0 does not support 64-bit systems and therefore data access on 64-bit machine fails.
I see that Microsoft has released new versions of the Access Database Engine with 64-bit support. The installers are AccessDatabaseEngine.exe (x86) and AccessDatabaseEngine_X64.exe (x64), which must be installed on the target machine. The x64 version will only install on a 64-bit system.
I have made the changes to my solution so that the data provider used is the new Microsoft.ACE.OLEDB.12.0 which for my purposes supersedes the Microsoft.Jet.OLEDB.4.0 provider.
So, I need to include the newer version of the Access Database Engine as a Publish Prerequisite.
The questions:
Do I need to generate a Bootstrapper Manifest or has Microsoft provided one somewhere?
Secondly, if I must generate a Bootstrapper Manifest, how do I find out the requisite information? Namely:
PublicKey for each, AccessDataBaseEngine.exe and AccessDatabaseEngine_x64.exe,
InstallConditions for each, etc.
Thanks so much for any useful comments or suggestions.
dragoguzzi