No matter the application, I’ve always had three issues with MSIs. First,editing the MSI is a pain. Orca makes this a little less painful but the tool is starting to show some age. Second, distributing drivers with the original MSI is nearly impossible! Most of the time, the solution is using a mixture of DEVCON/PNPUTIL or a deployment share. Finally, custom actions (such as activations or follow-up procedures) have to be manually ran or deployed with Group Policy. There isn’t a simple way to embed these into an MSI.
There is one easy free solution to all of these issues. Today, we are going to use Scalable’s Smart Packager to make your MSI maintenance simple.
Source : DeployHappiness