How do I pack affiliate-specific parameters into an MSI installer upon download?

79 views Asked by At

Let's say you have a re-seller/affiliate for your product but they want special features that will be injected into the product's installer so that affiliate can deliver a customized experience to their customers for their marketing campaign.

The product will look at these affiliate parameters and adapt it's features, functionality, and look-n-feel.

My question is wondering how one can go about passing custom information to an MSI based on who specifically served the file. We don't want to manually create these installers because it is time-consuming to manage all the custom downloaders for affiliates. What we want is something automated that is able to jam in those custom parameters on the fly.

1

There are 1 answers

2
Christopher Painter On BEST ANSWER

This is a very broad question and isn't answerable in it's current form. That said, MSI's are databases that can be updated or transformed. There are APIs to do this and it depends on where your MSI is hosted.

If it's on an IIS web site you could have some ASP.NET code that uses the Microsoft.Deployment.WindowsInstaller interop assembly to do your database operations. If it's a Unix machine you'd have to find something that uses Wine somehow to update the MSI.

You'd have to carefully consider your variation points and design an MSI that is easily injectable.

I've done this type of work for clients and it's doable but it's not a simple question.