So this is pretty lengthy inquiry, but I'm still pretty new at this so here goes.
Basically, there's 3 installers which I'll call A, B, and C.

Installer A and B are PRQs in Installer C.
I am trying to combine Installer B and C. I thought all I would need to do is add all of the components and merge modules that were installed in Installer B to Installer C, and then remove Installer B from the setup prereqs....
I'm experiencing 2 issues.
1. The files added to Installer C are all in the form of merge modules, and none of the merge modules have changed. When they were in Installer B, they would install to C:/Program Files/Our Company/Our Product. And now, as part of Installer C, they install to C:/Program Files. I tested and rebuilt one of the merge modules, and got it to install to the correct directory. But why would they be installed to a different directory than originally? Is there something I'm missing? They are all set to install to the merge module's default directory. How would all of the merge modules directories' have changed to C:/Program Files without me changing anything? INSTALLDIR in Installer C is set to [ProgramFilesFolder]OurCompany...and the original files in Installer C all install to the correct location, just not the new ones I added...
2. In Add/Remove Programs, as we originally released, 3 products appear, one for each of the original installers (A, B and C). The new Installer C upgrades the original Installer C, but leaves Installer B in Add/Remove Programs. I've added the Upgrade Code from the old Installer C to the Major Upgrades, but because it's technically a different product code, it's not getting upgraded (and removed from Add/Remove Programs). I suspect I need a custom action to remove the old Installer B. I copied an example I found somewhere, but don't know that it applies and could use help on if this even the right approach (and if, so how to actually do it)

Working directory: SystemFolder
Filename & Command line: [SystemFolder]msiexec.exe /x {Product Code GUID of Installer B} /qb
Return Processing: Asynchronous (No wait for completion)
In-Scrip Execution: Immediate Execution
Execution Scheduling: Always execute
Install Exec Condition: REMOVE="ALL"
Admin Exec Sequence: After InstallFinalize
Any help would be greatly appreciated!!!
Thanks!
~Bilandra:)