We need a technique to alter a Windows MSI Installer with a parameter that will be available to the installed executable.
## Deliverables
Provide a technique (T) to alter a MSI file (M) so that the installation passes a value (V) to the program (P).
P is a "Hello world" C# program displaying V in a message box.
M is a setup program installing P.
T is a technique that can be used from a C# program, taking the existing MSI file and writing V in a place accessible by P. This can be a config file or any other relevant place.
Everything is done in in Visual Studio.
Real world example:
We wish to have a single MSI that is customized that way for a given customer. For example provide a specific remote database address.
Please provide suggestions how to solve this problem before starting it.