It is possible to configure an MSI package to detect the operating system and use this as a “security” feature. For the purpose of this demonstration, I am using EIDAuthenticate. This is smart card logon software for standalone computers.
The community edition of this software is limited to the Windows Home version only, if you would like to use this software on any other version of Windows you’ll need to purchase the Enterprise edition.
Upon launching the Community edition on my Windows 8 Enterprise, an error is displayed saying it can only be installed on Windows Home Editions.
An MSI Install Editor – InstEd It!, a nice alternative for Microsoft Orca.
Editing the MSI Installer
Open InstEd It! and open the required MSI file, in this case it is the EIDAuthenticate Community Edition. Once opened, go to the table “InstallExecuteSequence”.
Now have a look at the section InstallUIConditions, you will see the same action called LaunchConditions.
Now you should have a look at the action in table LaunchConditions.
In the condition row, you can see the value “Installed or (MsiNTPersonal = 1)”, changing this value to 0 will install only on non Windows Home editions, not the best solution if we want this software to be available on any edition of Windows.
To make this work on all editions of Windows 7/8, remove the action LaunchConditions in the tables:
Now save the file and launch it on any Windows platform.