Installaware: How to add installation analytics
This blog describes how you can add installation analytics to your existing Installaware script.
With the installation analytics, you will be able to see the daily/monthly/yearly number of installations and uninstalls, the operating systems where the installations occur, the countries of your users and much more.
The described solution is composed of SoftMeter and Google Analytics (GA). You can use both for free.
From your Installaware install and uninstall script, you will make a call to the libSoftMeter.dll. This call will send an "Install" or "Uninstall" event to GA.
Overview of the tasks to add installation analytics for free:
- You create a new Google Analytics property (under your existing GA account, if you already have one to monitor your website traffic), and write down the new propertyID.
- You include libSoftMeter.dll into your installation package.
- You call the DLL from your Installaware script.
Note: Installaware can do only single function calls to DLLs and the function calling convention should be __stdcall.
This is why we created an all-in-one function that you can call by the name aio_sendEvent_stdcall()
This function takes parameters like your application name, version, license, GA propertyID, eventValue, etc.
When an installation is performed, put eventValue =1, and when an uninstall occurs, put eventValue = -1.
This way, GA will automatically count the "net" installations.
- The call sends a hit to your GA property and you can monitor the installation statistics via the normal Google Analytics reporting.
Installaware screenshots and script
In lines 526 and 527 you can see that the script, clerverly enough, first checks if the SoftMeter DLL is included in the installation package. This allows you to disable/enable the installation analytics of your Installaware package just be removing/adding the DLL and without altering the script.
The following two screenshots show the same call but they are slightly scrolled to show all parameters because the Installaware dialog is not resizable.
A similar call (not shown in the screenshots) must be made in the case of Uninstall with an eventValue of -1. This way, GA will measure the actual ("net") number of installations by removing the number of uninstalls.
As you can see the technical implementation is very simple.
See the complete SoftMeter implementation checklist to get started.