As it is now, 2 of the product installs I will kick off (if need be) are located after "InstallFinalize" in the Execute Sequence. The third product install occurs in the UI sequence (because it is a CA to launch an .msi, which needs to be done in the UI sequence). An AppSearch exists at the beginning of the UI sequence (which I need so I can determine if the 3 products are already installed) and then again at the beginning of the Execute Sequence. I cannot insert another AppSearch after my .msi is launched in the UI sequence, since it already has been inserted in this sequence. So, I thought about inserting my custom actions before the "AppSearch" in the Execute sequence, but I can't do this because my actions would need to be "deferred" CA's, since they would exist between "Install Inititialize" and "Install Finalize".
I currently force the user to install these 3 products into their default directories, and then am able to semi-hard code these install directory paths when I need them. But, this is unacceptable. I want my users to be able to install all 3 of the products wherever they like, and then have the ability to read this information from the tables.
I know that my install isn't exactly "simple", but this seems like a common thing to me.....there must be a way to do this, right? I have tried and tried and tried, dozens of different ways....what am I missing?