How To: Fix the Borland Database BDE MergeModule MSM
Open the MSM in Orca or Inst Ed
The errors requiring admin rights when your user self-repairs all come from a dodgy CustomAction.
Fixing the CustomAction's Component:
1. Go to the Component Table. Find the TempFolderFiles row. Delete the values in the ComponentId and KeyPath columns.
Fixing the CustomAction's Condition:
2. Go to the ModuleInstallExecuteSequence Table. Find the BDEConfig Row and set its Condition to "Privileged".
This really is a poor MSM.
While you are in the ModuleInstallExecuteSequence you should fix the condition on BDEReduceUseCount. It should be the same as BDEBumpUseCount, changing the 3s to 2s.
It doesn't correctly search for existing idapi files
Go to the RegLocator Table and remove the leading slashes from the Key column so that it reads
The Registry Table has loads of AppPath rows. These keys are for pointing windows to EXE files. Delete all the ones that do not (36 of them.)
You may also want to remove the component called idapi32.cfg. It is not used in the package.
If you want to allow your users to be able to adjust their BDE settings then you relax permissions on the Registry Key in "Software\Borland\Database Engine"
Follow this and you'll get a much improved BDE experience.