After downloading Hackolade, you need to obtain and validate an activation key before you can use the application.


Important: the following domains must be whitelisted: https://hackolade.com,  https://quicklicensemanager.com, and https://github.com


You can initiate the process of getting an activation key either from the website, or from inside the application.  Once you have an activation key, it needs to be validated from the application.


Warning: if you have an HTTP proxy server on your network, you may have to manually set in the application the proxy parameters.  You will find more information on the Network Proxy page.


Useful info when managing licenses for multiple users: read this article if you're a license administrator and want to track who's using Hackolade licenses.



1. Get a software license key

1.1 from the website

Go to the pricing page and choose the version you prefer (see here for more info).  You will be directed to the Hackolade Store where you'll be guided through the checkout process.  A license key will be generated and provided on screen and via email.   You will need this key to access the application.  Go to step 2 below for instructions.

1.2 from the application

When you start Hackolade, if there is no valid license key present, you are presented with this dialog box:



This screen can also be reached by going to Help > Software Key Validation.



Choose one of the following options:



then click the Send button.  You will be directed to the Hackolade Store where you'll be guided through the checkout process.  A license key will be generated and provided on screen and via email.   You will need this license key to access the application.  Go to step 2 below for instructions.

2. Validate your license key

If you have not downloaded Hackolade yet, please do so from the download page.






Step 1: In the Software Key Validation dialog, please choose the option 'I want to...':

then Step 2: paste your license key, and optionally enter your name or an identifier to help manage multiple licenses

and Step 3: click the Send button.  


You need to be connected to the Internet for this step to validate your license key with Hackolade's license server.  If your company has many licenses, your administrator may require that you enter your name in the Identifier (optional) field:


You should be getting this confirmation message:


and the license details will be filled window will be filled.


3. Release the license key from one computer to move to another

If you need to move your license key to another computer, you first need to release it on the PC where your key is currently validated.


To do so, go to the option Help > Software Key Validation, and choose the action 'I want to...':

and click the Send button.  This will free up the key on our license server.  


Make sure to copy the license key and store it (or find your original license key confirmation email) as you will need it to activate on the other computer where you will want to use Hackolade.


As of this moment, you can no longer use Hackolade on the original computer, unless you you re-register it.


Go to the other computer where you want to use Hackolade and validate your license key using the instructions above '2. Validate your license key'


4. Offline validation

Important note: offline validation will NOT work for subscriptions or perpetual concurrent licenses.  This section is only for Community, Trial and perpetual workstation licenses.


There maybe cases of proxy issues when Hackolade is not able to validate the license key online. To access the Internet, the application uses the proxy settings from the PC's browser, as stored in Windows Internet Options > Connections of the dialog c:\Windows\System32\inetcpl.cpl  or proxy settings may be entered by following the steps described here.


If the application can detect that it cannot reach the Internet, the following dialog is displayed:



By clicking on the link or the Send button, you will be directed in your browser to this page (or you should copy the URL so it could be used on a different computer with Internet access), with the fields pre-filled:


When you click the activate button, an XML file will be downloaded to your PC.  With the application, choose the path and filename of the downloaded file:



And the application should get activated.  Do not modify anything in the downloaded file, or the activation will fail.


5. Concurrent licenses

Concurrent licenses (a.k.a. floating licenses) work differently than workstation licenses.  With concurrent licenses, Hackolade's cloud-based licensing server tracks the number of simultaneous users for a given concurrent license key.  If the number of simultaneous users reaches the maximum number of seats for the license key, anyone who subsequently tries to start the software is denied access.  


The application may be installed on a large number of computers, each with the same validated license key, but a maximum number of users are allowed at the same time, according to the number of seats purchased for that concurrent license key.  For example, an organization has acquired a single concurrent license key for 20 seats.  The application and validated license key are installed on 250 PCs.  At any given time, only a maximum of 20 users will be allowed to use the application.  If a 21st user attempts to open the application, access will be denied until a previous user exits the application and frees up a seat.


With workstation licenses, the license key is entered and validated by our Hackolade cloud-based licensing server when the application is first accessed.  After that validation, the application no longer needs to access the licensing server.  To be complete, each time the maintenance or the subscription expires, the application will again communicate with the licensing server to check if the contract has been renewed.


For concurrent licenses, the licensing server is contacted multiple times: each time the application is started, plus each time the application is exited.  Assuming that the license key has been validated once for an application instance, each time the application is started, the licensing server is contacted to verify the availability of a seat.  If a seat is available, it gets reserved on the licensing server with the unique UUID of the PC, and access is granted.  If no seat is available, access is denied.  Any seat granted when opening the application gets released upon exiting the application.  


Offline use of the application is possible but requires to start the application so a seat can be granted before going offline, provided that a seat is indeed available. The seat will remain assigned until the application is exited while online.


Note: In particular with concurrent licenses, it is strongly suggested to read and apply this article so a license administrator can track who's using Hackolade licenses and seats.  


6. Licenses on Virtual Machines (or physical computer accessed via RDP or equivalent)

Important note: installing Hackolade on a central computer (whether on a PC or a server, whether the machine is virtual or physical, and whether on premises or in the Cloud) does not change the terms of our License Agreement.  Specifically, that license metric is per "per seat", and that a license must be obtained for each device on or from which the Product is used or accessed. When the Product is accessed remotely across using Terminal Server, Remote Desktop, Citrix XenDesktop or an equivalent method, a separate Product license is required to be assigned to each device from which the application is accessed, i.e. not the virtual machine on which the Product is installed.


Important: before you delete a user login on a VM, or delete an entire VM, make sure to release the Hackolade key(s) via Help > Software Key Validation > Release.  This is the only way for you to free up the seats of that user, and make it available for another one.


Reminder: when installing Hackolade on a VM to share among multiple users, it is important to realize that licensing is not attached to just the machine, but to the combination of the machine, where Hackolade is installed, a client workstation identification for the PC accessing the application, and the user login.  As per the EULA: "A license must be obtained for each device on or from which the Product is used or accessed."  


Example: having 4 Hackolade users on a single VM is the equivalent of having 4 individual PCs running Hackolade from a licensing point of view: you need 4 license seats to be validated.


VM configuration

Hackolade licensing is enforced through registration on our license server of a combination of unique identifiers, including the UUID of the computer where Hackolade is installed, a client workstation identification for the PC accessing the application, and the user login.  Each unknown combination reserves one seat on our license server, until you reach the total number of seats purchased for the submitted license key.


While typically Windows installation does not require admin rights, if the directory where the software is to be installed requires admin rights, you may need the intervention of an administrator with elevated rights to execute the installation.  The Hackolade installation should be made for "all users" of the central computer, if given the choice.  Please refer to the section above for instructions on the installation process.


Once the software is installed centrally, each user login should be able to access its own instance of the application.  Each user login on the central computer will be required to go through software key validation, following the steps outlined here.


Given the way license seats are counted, it is important that identifiers remain stable.  If your IT department configured VM infrastructure differently, it may be required for your IT department to adjust parameters in order to achieve stability.


Citrix

====


ENABLE_DYNAMIC_CLIENT_NAME should be left to YES
Allows client name to be the same as the computer name. When you change the computer name, the client name changes too. 

• Yes (default) – Allows the client name to be the same as the computer name. Example, CitrixWorkspaceApp.exe ENABLE_DYNAMIC_CLIENT_NAME=Yes. 

• No - Does not allow the client name to be the same as the computer name. You must specify a value for the CLIENT_NAME property. Example, CitrixWorkspaceApp.exe ENABLE_DYNAMIC_CLIENT_NAME=No


Additional resources:

https://docs.citrix.com/en-us/receiver/windows/4-9/install/cfg-command-line.html#identify-a-user-device

https://docs.citrix.com/en-us/receiver/windows/4-9/install/cfg-command-line.html#dynamic-client-name



VMWare

=======

As per this VMWare article, setup should generally be OK:  "Each virtual machine has a universal unique identifier (UUID). The UUID is generated when you initially power on the virtual machine...  Suspending and resuming a virtual machine does not trigger the process that generates a UUID...  If you do not move or copy the virtual machine to another location, the UUID remains constant."  


If it is not the case, maybe instructions in this article will help your IT department configure appropriately