Dim info = New LicenseValidationRequestInfo() #If DEBUG Then ' Only enabled in debug builds. info.DeveloperMode = True #End If _license = SecureLicenseManager.Validate(Me, Nothing, info)
var info = new LicenseValidationRequestInfo(); #if DEBUG // Only enabled in debug builds. info.DeveloperMode = true; #endif _license = SecureLicenseManager.Validate( this, null, info );
During license validation, DeployLX will check a well known registry key for a specially encoded value to determine if Developer Mode should be enabled. The code is specially encrypted so that only a developer with access to the license keys for the product can generate the code.
To generate the developer mode key
- Start the DeployLX Manager.
- Select Help | Generate Developer Mode Key from the Home tab of the Ribbon.
- Select the License Keys used to protect the application.
- Set the Expires date (default 3 days). This is important so that developer mode keys cannot be kept and shared.
- Select Generate.
The developer mode key is shown in the Result box. Add this value to the client machine by creating a new String value named DeveloperMode under HKCU\Software\XHEO INC\DeployLX\v5.0.
requires v4.1 R4616To make this even easier on your user, select Save to generate two .REG files to enable and disable Developer mode. Once saved, the user can double-click on the .REG file to enable Developer mode on their machine.
When Developer Mode is enabled the following behavioral changes are applied.
- After validation has completed, a message is displayed indicating the application is still in developer mode when no debugger is attached.
- Exceptions caught during license validation are reported in their entirety instead of recording just the error message. This includes stack trace and inner exception details.
- Serial numbers and activation codes will not be peristed to the machine so that license modification and testing are easier.
- Clock check errors are reported.
- Errors on the license server will be reported in complete detail.
- The last license and license file to be validated on the server will be stored in HttpContext.Current.Cache["DeployLX.LastLicense"] and HttpContext.Current.Cache["DeployLX.LastLicenseFile"] respectively.
- If the server connect timeout has not been manually configured then the timeout is automatically changed from the default 2 minutes to 10 minutes.
- Clears any secure storage tamper detection of the user receives a "Could not acquire secure storage" message.
The following additional LicenseValidationRequestInfo properties are useful during development.
|DeployLX does not save any client state -- such as the time remaining in a trial -- to secure storage.
|Test licenses that use a license server as if the machine was not connected to the internet.
|DeployLX will ignore any serial numbers currently stored in the license. Useful during development to test the registration process.
|Safely test the behavior of time limited licenses without changing the system clock.