This dialog allows you to edit the license format.
The license format is used when licenses are generated and validated. The license format is composed of plain text and license elements. License elements are surrounded by the % char and they will be replaced when the license is generated with the values specific to each license.
License ID: %ID% Signature: %SIGN% Maintenance Plan: %MP% Expiration Date: %EXP% Register Until Date: %REG_EXP%
The license format above supports maintenance plan, expiration date and a date until the user must register. Being present and the ID element, the license can be invalidated in versions released after the license was distributed by blacklisting the license.
License ID: firstname.lastname@example.org Signature: EJa7ACOFxwfsLuhLLZzq@niL4Mgrx@uf1hvf8du9fM7ehxexmeiZDKoet50mjp0K Maintenance Plan: 12/15/2010 Expiration Date: 12/15/2011 Register Until Date: 06/15/2010
This sample license
- is valid for versions released (built) before December, 15, 2010 - due to its specified maintenance plan (%MP% - license element)
- is valid until December, 15, 2011 - due to its specified expiration date (%EXP% - license element)
- must be used until June, 15, 2010 - due to the %REG_EXP% license element
- is secured using cryptographic algorithms based on RSA public-key signature, the public key being embedded into the licensing library and used to validate the license. The private key is used inside Advanced Installer to sign the licenses generated into the Generate License Dialog.
Template Editing Restrictions
Here are the restrictions that must be considered when editing the license template:
- license signature (%SIGN% element) can not be removed
- signature element can not be followed by a letter, digit or any of the signs: @$ - because they will also appear inside the signature element
- only machine specific licenses may have only the signature element
- license elements representing dates (%MP%, %EXP% and %REG_EXP% elements) can not be followed by a digit or the / sign - because they will also appear inside the license element value
- license elements can not be followed by the element template marker %
- % char must be doubled if you intend to insert it as plain text
- when the license is generated, text license elements (the license %ID% and any other user defined license element) will not be able to contain the character that follows them into the license template
Adding custom license elements
To add a custom license element just type its name surrounded by % (template element marker). You may also have an explanatory text for the element to increase the generated license readability.
Here is a license template that contains a custom element named TYPE
License ID: %ID% Signature: %SIGN% Edition: %TYPE%
License ID: email@example.com Signature: iozjNEYXQ3bNVxfcyzE7XIrFc7UEjyESl6gm@3PUlfmvlD8wVjKLm0dq4B1bkT1n Edition: Simple
License ID: firstname.lastname@example.org Signature: 7BRNCqo8RlNzKvYI@iuBSTbyqOgT9v0w12mdoMjIvtIK3a4q8HEMV1CMIuMvV6tj Edition: Pro
To make your application behave different depending of the value of “TYPE” license element, you MUST retrieve its value using GetPropertyValue library function and implement the desired behavior.