Question

Here's the problem. We have some software, there is a free edition and a paid edition available.

The software is an EXE download which sets up the software. The way we are hoping to gain most sales are from people downloading the free edition, then deciding through various links in the software that they would like to pay for it now and unlock new features.

At the moment we run several campaigns to get visitors to our site. We know that a visitor came from say our Reddit campaign, downloaded our software and then from all intents and purposes they have vanished. If they use the software and wish to pay, they click a link in the software and the purchase is annonymous.

What we would like to do is when they download the software, somehow it generates a text file in their install directory with the source of their download in it. This file would contain data like "reddit1" to indicate they originated from reddit campaign #1. Then every link in the software sends that variable in a GET request so we know where the sale actually has come from.

What we can't figure out the best way to do, is when we have the variable with their source in it on the website, how to pass this to the EXE download so during install it generates the data file? We don't want to have multiple downloads for each campaign we run.

Was it helpful?

Solution

We managed to solve this problem by passing an Id into the filename, such as:

setup_221.exe

Where 221 = the referal. The setup program can take the referal ID and save this into the directory, then pass it to the website which translates it as the actual campaign.

OTHER TIPS

One way would be to ask the client to complete some details before download, so you can uniquely identify him and give him a serial number.

After the download finishes, the first time is ran, the soft will ask the user for the serial and then will make a request to the server and get needed details related to that user like the campaign, etc...

When the user wants to update his licence, the software will ask the server for a link based on that user.

(Provided that you're using .NET, which, from your other questions, this appears to be the case...)

Perhaps you don't have multiple versions of your product, but still multiple EXEs for each campaign. You could maintain and possibly even automate these "one off" builds at download-time by merging in a lightweight "referrer" assembly into the final EXE using ILMerge. Your referrer assembly should try to be loaded at runtime by the main product EXE, and if it finds it, then it could modify its referrer parameter.

Is it an option to generate the exe file when the download starts? If so, you could add the textfile then.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top