I have created a Basic MSI installer and its version is v2.5.0. Using the .ism file that was used to create v2.5.0 installer I created a patch v184.108.40.206 under patch design. Now again using the same .ism file I created another patch v220.127.116.11. When I created patch versions for v2.5.1.xx (eg. 18.104.22.168, 22.214.171.124...etc) and installed one over the another i.e. first install v.2.5.0 then install patch 126.96.36.199 and then 188.8.131.52, it works fine. Similarly I created patch versions for v2.5.7.xx (eg. 184.108.40.206, 220.127.116.11...etc) and installed one over the another, it works fine. But if I install say 18.104.22.168 and then install patch 22.214.171.124 then during 126.96.36.199 installation it gives this error.
The upgrade patch cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade patch may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade patch.
In the .ism that creates 2.5.7.xx patch installer, I set the property 'Minor Update to Target RTM Version' to 'Yes'. This allowed me to install 2.5.7.xx over 2.5.1.xx, say 188.8.131.52 to 184.108.40.206 works fine, but then if I install 220.127.116.11 over 18.104.22.168 then it fails and asks for original source i.e. v22.214.171.124.