Trial licenses let end users use an application for a predetermined length of time or number of uses without requiring a license. This feature can be useful for eliminating the need to supply licenses with evaluation software distributed to a large number of anonymous users.

Trial licenses work similarly to all other license types and do not require that you change your procedures. However, trial licenses are limited and will not contain the same type of information as normal licenses. For example, LMX_GetFeatureInfo() will exclude most fields.

You do not create a .lic file for trial licenses. Instead, you simply specify the number of trial days or uses as described below.

Enabling trial licenses

To enable trial licenses, you must set the predefined trial length (see LMX_OPT_TRIAL_DAYS in LMX_SetOption) and/or the number of checkouts allowed (see LMX_OPT_TRIAL_USES in LMX_SetOption).

A trial license begins when the application is run for the first time and expires after the specified number of days or checkouts is reached (whichever comes first), after which the end user can no longer use the trial license. However, if the end user has a local or network license, it will supersede the trial license.

After you enable trial licenses, requests to LMX_Checkout() will succeed for trial license checkouts. Trial licenses will be available only if no other licenses exist.

It is important to specify the version number in LMX_Checkout(). For example, say you have designed your trial version 2.1 to expire in 14 days. The trial can be run only once, so if a customer needs a second trial, you must increase the version number in LMX_Checkout(), say to 3.1. For example: (LMX.Checkout "Trial", 3, 1, 1). This way, the customer can install and run the trial again.

Limitations and cautions

By default, trial licenses are not allowed on virtual machines or terminal servers. You may allow trial licenses to run on virtual machines or terminal servers by using LMX_SetOption(); see LMX_OPT_TRIAL_VIRTUAL_MACHINE and LMX_OPT_TRIAL_TERMINAL_SERVER in LMX_SetOption.

Be aware that on most operating systems, the locations you can write files to are limited, and there is a risk that someone can delete the files intentionally or unintentionally.

Trial licenses are less secure than other license types; for example, licenses with an expiration date. This is not due to LM-X trial license limitations, but rather operating system limitations on where you can securely store data. There is always a risk that dishonest users will find a way to reset trials without your consent.

For these reasons, you should consider using additional security measures for trial licenses, such as establishing a policy of when trial licenses are used, doing additional verifications as needed, etc.

Improving the security and usefulness of trial licenses using LAC

To enable trials with increased security, you may consider using License Activation Center (LAC). For example, by integrating trials with your website to allow users to sign up for a trial key online. This lets you offer your trials using a license with an expiration date.

LAC also gives you access to statistics about evaluations. With LAC, you can see who is and is not activating licenses, giving you business intelligence that helps you understand more about the users evaluating your software.

Restarting a trial

If you need to restart a trial for any reason (for example, to allow the user more time to evaluate the software, or to fix errors that may rarely occur due to secure store corruption), you can send the user the LmxResetTrial tool.

The LmxResetTrial tool cleans up the trial information and lets the user re-run the trial. The LmxResetTrial tool can be run only once. Subsequent attempts to run the tool will report the message "XF Error: This utility can be used only once!"