Friday, March 4, 2016

OpenVPN – Creating an MSI installer

To create an MSI installer for open VPN will require:

WIX: http://wixtoolset.org/releases/ (This was created using 3.10.2)

Open VPN installer: https://openvpn.net/index.php/download/community-downloads.html (This was created using 2.3.10)

2 x GUID: http://www.guidgen.com/

Createmsi.bat: http://pastebin.com/gbT4b2wC

Openvpn-install-2.3.10-i602-x86_64.wxs: http://pastebin.com/yTYWaT13


Download WIX from the link above.

Install by running as administrator.






















Install.























Create a folder in the root of C drive called OpenVPN.



Modify Openvpn-install-2.3.10-i602-x86_64.wxs.  Change the following:

<?define ProductVersion = "2.3.10"?>

<?define ExeSourceFile = "openvpn-install-2.3.10-I602-x86_64.exe"?> 

<?define ProductCode = "9dc4937b-e23c-42a3-a344-86b78f61f8d1"?>

<?define ProductUpgradeCode = "407cfa7d-b3fc-48a9-abfc-2088070685a7"?>

ProductVersion is the version of Open VPN to install.

ExeSourceFile is the name of the Open VPN executable file.

ProductCode is one of the GUID you generated.

ProductUpgradeCode is the 2nd GUID generated.

The wxs file name will need to be changed to reflect the exe installer name.



The GUID are used to identify the products.  The ProductCode is the ID of the version we are
installing now.  The product upgrade code will allow upgrading of previous versions to the current version.  In the example ablove, I will install a product code of 9dc4937b-xxx.  This will update
product code of 407cfa7d-xxx.  When i create the next version, I will generate a new GUID and use that for the product code, but place the 9dc4937b-xxx into the product update code.



Place CreateMSI.bat andOpenvpn-install-2.3.10-i602-x86_64.wxs into the c:\openvpn folder.





Open an administrator command prompt.



Navigate to c:\openvpn and run CreateMSI.bat.



This will create the MSI in the c:\openvpn folder.



1 comment:

  1. I have a lot of different versions of OpenVPN in the infrastructure and I would like my silent msi to update on top of these by GPO. Do you know how can I get one unique product ID that applies to all versions? Would it be problematic if I've installed openvpn by my msi with different product ID than the one installed?

    ReplyDelete