Introduction
No contents entries on this page
Contents
Topic functions menu
Menu
This is the first topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This tutorial presents an easy way of learning how to use Licence Protector.

It is designed for developers and anyone else who wants to provide copy protection and licensing.

The Online Tutorial is updated frequently.

Using the help

Use the buttons [image] [image] [image] in the upper right corner to browse through the online help. Small images are enlarged if you click on it.

Print this tutorial

The Online Tutorial is also available as a PDF document.

You can print this tutorial - click on the link to download PDF file

Update / Upgrade

Update Service Pack 4.1

Upgrade from version 3.x to 4.0

Tips and tricks

· Different ways to implement subscription based licensing

· Deactivate one single computer in case one key / ID is used on multiple computers

· Computer usage report in case one single key / ID is used on multiple computers

·Activation Server - Dashboards

· PrepareAndCheckNT

· Automated USB flash drive duplication

· Linux, Android, IOS

· New background images added

· Integration in Online Shops / E-Commerce systems

·TAB Activation Server

·New Key to disable / enable regular online checks

· License transfer during uninstallation of an application

Copyrights and Trademarks

Copyright © Mirage Computer Systems GmbH. All rights reserved.

Information in this document is subject to change without notice. The software described in this document is furnished under a license agreement or nondisclosure agreement. The software may be used or copied only in accordance with the terms of those agreements.

This documentation and the accompanying material are for informational purpose only and property of Mirage Computer Systems GmbH, Aulendorf. Information in this document is subject to change without notice. The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended to represent any real individual, company, product, or event, unless otherwise noted.

No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or any means electronic or mechanical, including photocopying and recording for any purpose other than the purchaser’s personal use without the written permission of Mirage Computer Systems.

All products and company names mentioned herein may be the trademarks of their respective owners.

http://www.mirage-systems.de

Licence Protector Version: 4.1

This document was updated: 11/21/2015


Overview
No contents entries on this page
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This documentation introduces you step by step how to integrate Licence Protector.

It explains EasyGo, a technique, developed by Mirage Computer Systems GmbH, to implement licensing and copy protection with just 4-6 DLL calls using professional screens (in multiple languages) and different activation options. It can be combined with all the other Licence Protector features to have all the flexibility you need. As the EasyGo workflow will suit most requirements, it make sense to first check this workflow and then have a closer look at the other Licence Protector options.

Licence Protector requires a Source Code integration. If

·Source Code is not available

·You do not want to invest much time for licensing

·Your application is a standalone application (no DLL, no service)

You can use All-In-One Protector which offers an integration without changing the Source Code (no programming required).

With Licence Protector, it is also possible to develop own screens and integrate nearly any bespoke workflow.

EasyGo covers registration

·Online registration via Activation Server 4

·Registration by e-mail

·Registration by fax

·Registration by phone

·Buy a license online – link to shop

and also licensing:

·Copy protection violation

·System Date manipulation

·Network license

·Tamper detection

The built in functionality comes with self-explanatory, clearly laid out and well designed screens.

You can configure which registration and licensing options you want to use, e.g. online activation in combination with e-mail, but not registration via phone and fax. Also the logo and help text can be defined individually or you can use the preconfigured text in multiple languages.

The EasyGo feature reduces the time for implementation drastically and ensures that all major licensing options are covered.

Click to enlarge

EasyGo Start Screen


Release Information
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The latest main release number is 4.1. There are 3 installation packages:

·Licence Protector - Version 4.1

· Automatic License Generator - Version 410

· Activation Server - Version 4.2

Backward compatibility

Activation Keys

·The LicProtector410.DLL can read all Activation Keys from prior version. It can also create Activation Keys which will work in older versions.

License Files

The license file has not changed. Licence Generator 4.0 and DLL / COM exe 4.0 can open license files generated with version 4.1

Activation Server

·The Activation Server 4.2 can accept Transactions from prior DLL versions

·The Activation Server 4.2 supports all features from Licence Protector 4.1. It is mandatory to upgrade to Activation Server version 4.1 or newer if Licence Protector version 4 is used

If you use the Hosting Server, it will be automatically upgraded. .

Automatic License Generator

As the Automatic License Generator creates license files and Activation Keys. See restrictions above regarding format of the file and key.


Known Problems
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Known Problems are listed in the Knowledge Base

Select Licence Protector, Known Problems, Version 4.1


Evaluation Version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The evaluation version of Licence Protector is a full version of the Professional Edition with the following restrictions.

·The License Generator sets a date when the license will end – it is 10 days added to the current date

·Each Activation Key sets a date when the license will end – it is 10 days added to the current date

·The Expiry Date can not be modified

The Activation Server and the Automatic License Generator (e-commerce integration) is not included in the evaluation version. You can request the versions here.


Licence Generator - Start Screen

Navigation: Introduction:

License Generator - Start Screen
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After starting License Generator the main start screen appears. You can select your language within the menu Extra, Language.

The last used project file is automatically loaded. You can now create a license file


Welcome Screen
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

By default, the Welcome Screen is opened additional to the Start Screen. This screen provides you with:

·Links to most popular FAQ to get started

·Link to Online Knowledge Base

·Link to updates

The screen can be deactivated by checking Do not display this Quick Introduction help anymore when starting and activated again in the TAB Help, [image] Quick Introduction help


You are in a hurry?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have no time to get an overview about Copy Protection, Evaluation Options, Activation Screens and the overall concept, you can directly jump to the chapter Implementing EasyGo.

If your application is an application which runs only on the server, is a service or web based application see chapter: Server Application, Service Web Application.


Starter, Basic or Professional Edition?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes in a Starter, Basic and Professional Edition.

Check out the feature comparison matrix which provides you with all the details to decide, which version is right for you.


How to activate Licence Protector
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

During the trial period, the activation screen appears with each program start. You need a Serial Number to activate the product - see Buy Serial Number.

To be sure to work with the latest version, always download the version you get with the order confirmation e-mail. First uninstall the version on your PC - see How do I uninstall Licence Protector?.

What happens during activation?

The activation process will bind the license to the PC. You can use the Serial Number within the same domain on multiple PC's. After the activation is done, Licence Protector will run only within this domain. Your hardware data, Serial Number, name, e-mail address and some program specific data is transferred to our activation center. No other data stored on your PC is transmitted.

License File

If you got a license file with your order, copy this license file to the installation folder before you activate the software.

Select Activation Method

On the first screen, either choose

·I have a Serial Number and I want to activate Licence Protector. This will use the Online Activation. This is the recommended activation method and should be used if an Internet connection is available

·You can also request an unlock key by e-mail. This will use the e-mail Activation

Start Video Tutorial

See also

Buy Serial Number
Online Activation
e-mail Activation
Reinstall Software
License usage and installation on multiple PC's


Buy Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Serial Number is your proof of purchase. It is unique and will look like this.

dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX

There are 6 blocks each with 5 characters. The blocks are separated by a hyphen for better readability.

Select your Edition

Starter, Basic or Professional Edition? Check out the feature comparison matrix which Edition is right for you.

Buy Serial Number

If you do not have a valid Serial Number, you can buy it here - Buy Licence Protector.

Activate Licence Protector

Activate the product Online or by e-mail.


Online Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Online Activation requires the Serial Number, company name and e-mail address. Then the license will be verified online and activated. No additional step will be required. Licence Protector can now be used on this PC.

Backup your Serial Number. You will need it for a reinstallation.


e-mail Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The e-mail Activation requires the Serial Number, company name and e-mail address.

Request Unlock Key

After filling out the screen, select: Request Unlock Key by e-mail - send e-mail. This will open your default e-mail client. An e-mail with the hardware IDs and license information will be created. Press send to send the e-mail to our activation center. You will get an Unlock Key back within 2-3 business days.

Backup your Serial Number. You will need it for a reinstallation.

See also

Enter Unlock Key


Enter Unlock Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After requesting the Unlock Key by e-mail, the screen shown below will appear during each program start. Type in the Unlock Key you got back by e-mail. The activation process is then completed.

See also

e-mail Activation


Add additional keys
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Additional licenses for Licence Protector

To display your licenses for Licence Protector, choose the TAB Help, [image] License Viewer. If you have acquired additional licenses for Licence Protector (e.g. more projects or the concurrent user module), you can activate the licenses via the Activation Key you got with the order confirmation.

You can type in the Activation Key after pressing the button Activation Key.

Online Validation

Some Activation Keys are validated online and they require an Internet connection. After pressing the OK button this screen appears.

Select TAB Help, [image] Buy Licence Protector to buy additional licenses.

Apply Activation Key after Evaluation Period has expired

If the evaluation period has expired, click on the icon ?, select Show License Information (see screen below) and then press the button Activation Key.


License usage and installation on multiple PCs
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You have to activate the product before you can use it without the restrictions of the demo version - see How to activate Licence Protector

Copy Protection

Copy Protection using the domain name is turned on after activation.

Installation on multiple PCs

You can either use the Serial Number within the same domain or just copy the license file licprotector.lic to another PC. If you want to use the License Generator on a machine, which is not in the same domain (e.g. a external company does the software development), then open a support ticket to allow an installation on a separate domain. See chapter license usage below if you have to buy a new license.

We recommend making a backup of the license file.

Additional Key

Every time you add an additional key (e.g. key for update subscription or you buy a new module), you can share the updated license file to other PCs easily

·After adding the key within the License Viewer. In the License Generator select TAB Extras. Click on Backup License. This will upload your license file to the Activation Server

·On all other machines, which already have an activated version. In the License Generator select TAB Extras. Click on Restore License. This will download your license file from the Activation Server to this PC

License Usage

You may distribute and install only those files marked for distribution in the chapter Distribution of the developer documentation on any machines of your end users. You may distribute these files only with your software application. You must never distribute and install these files without your software.

·You are allowed to use as many project files/applications as are stated on the invoice or delivery note. If there are no project files stated, you can protect with the Starter Edition 3, and the Basic Edition 5 and with the Professional Edition an unlimited number of project files/applications. Unused projects can be removed.

·You can distribute the Licence Protector DLL with your application to any customer you like - without paying more fee

·The application License Generator may be used within a network by any number of users (site license)

·The application Activation Server may be used within a company by any number of users. It is a license for one instance. Especially it is not allowed to use the Activation Server on multiple instances and offer hosting services

·You need a new license for Licence Protector for each branch office where you develop software or generate licenses (site license)

See License Agreement for details of usage.


Number of projects / applications you can use

Navigation: Introduction > How to activate Licence Protector:

License Generator - Number of Projects
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Number of Projects / Applications you can protect

You have acquired a license for Licence Protector for a specific number of projects = software applications. The project name of the XML project file is used for licensing. Choose the TAB Help, [image] License Viewer to display, how many licenses are available and which projects are using the licenses.

All active projects are displayed. Deactivated projects are displayed in brackets.

Deactivate a project

If you don't need a project any more, you can deactivate projects with the Deactivate button (highlight the project name) to gain free licenses. To buy additional licenses, select TAB Help, [image] Buy Licence Protector.

To use the project again, highlight it and select the Activate button.


Reinstall Software
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can reinstall the application on the same domain as often as you like. First uninstall Licence Protector, delete the complete installation folder, then reinstall the application - see How to activate Licence Protector.


License Agreement
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

PERPETUAL END USER LICENCE AGREEMENT

You may distribute and install only those files marked for distribution in the chapter Distribution of the developer documentation on any machines of your end users. You may distribute these files only with your software application. You must never distribute and install these files without your software.

·You are allowed to use as many project files/applications as are stated on the invoice or delivery note. If there are no project files stated, you can protect with the Starter Edition 3, and the Basic Edition 5 and with the Professional Edition an unlimited number of project files/applications. Unused projects can be removed.

·You can distribute the Licence Protector DLL with your application to any customer you like - without paying more fee

·The application License Generator may be used within a network by any number of users (site license)

·The application Activation Server may be used within a company by any number of users. It is a license for one instance. Especially it is not allowed to use the Activation Server on multiple instances and offer hosting services

·You need a new license for Licence Protector for each branch office where you develop software or generate licenses (site license)

NOTICE TO ALL USERS: CAREFULLY READ THE FOLLOWING LEGAL AGREEMENT (‘AGREEMENT’), FOR THE LICENCE OF SPECIFIED SOFTWARE (‘SOFTWARE’) BY MIRAGE COMPUTER SYSTEMS GMBH (‘MIRAGE’). BY CLICKING THE ACCEPT BUTTON OR INSTALLING THE SOFTWARE, YOU (EITHER AN INDIVIDUAL OR A SINGLE ENTITY) CONSENT TO BE BOUND BY AND BECOME A PARTY TO THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS AGREEMENT, CLICK THE BUTTON THAT INDICATES THAT YOU DO NOT ACCEPT THE TERMS OF THIS AGREEMENT AND DO NOT INSTALL THE SOFTWARE.(IF APPLICABLE, YOU MAY RETURN THE PRODUCT TO THE PLACE OF PURCHASE FOR A FULL REFUND.)

1. LICENCE Grant. Subject to the payment of the applicable LICENCE fees, and subject to the terms and conditions of this Agreement, MIRAGE hereby grants to you a non-exclusive, non-transferable right to use one copy of the specified version of the Software and the accompanying documentation (the ‘Documentation’). You may install one copy of the Software on one computer, workstation, personal digital assistant, pager, ‘smart phone’ or other electronic device for which the Software was designed (each, a ‘Client Device’). If the Software is LICENCED as a suite or bundle with more than one specified Software product, this LICENCE applies to all such specified Software products, subject to any restrictions or usage terms specified on the applicable price list or product packaging that apply to any of such Software products individually.

a. Use. The Software is LICENSED as a single product; it may not be used on more than one Client Device or by more than one user at a time, except as set forth in this Section 1. The Software is ‘in use’ on a Client Device when it is loaded into the temporary memory (i.e., random-access memory or RAM) or installed into the permanent memory (e.g., hard disk, CD-ROM, or other storage device) of that Client Device. This LICENSE authorizes you to make one copy of the Software solely for backup or archival purposes, provided that the copy you make contains all of the Software’s proprietary notices.

b. Server-Mode. You may use the Software on a Client Device as a server (‘Server’) within a multi-user or networked environment(‘Server-Mode’) only if such use is permitted in the applicable price list or product packaging for the Software. A separate LICENSE is required for each Client Device or ‘seat’ that may connect to the Server at any time, regardless of whether such LICENSED Client Devices or seats are concurrently connected to, accessing or using the Software. Use of software or hardware that reduces the number of Client Devices or seats directly accessing or utilizing the Software (e.g., ‘multiplexing’ or ‘pooling’ software or hardware) does not reduce the number of LICENSES required (i.e., the required number of LICENSES would equal the number of distinct inputs to the multiplexing or pooling software or hardware ‘front end’). If the number of Client Devices or seats that can connect to the Software can exceed the number of LICENSES you have obtained, then you must have a reasonable mechanism in place to ensure that your use of the Software does not exceed the use limits specified for the LICENSES you have obtained. This LICENSE authorizes you to make or download one copy of the Documentation for each Client Device or seat that is LICENSED, provided that each such copy contains all of the Documentation’s proprietary notices.

c. Volume LICENSES. If the Software is LICENSED with volume LICENSE terms specified in the applicable price list or product packaging for the Software, you may make, use and install as many additional copies of the Software on the number of Client Devices as the volume LICENSE authorizes. You must have a reasonable mechanism in place to ensure that the number of Client Devices on which the Software has been installed does not exceed the number of LICENSES you have obtained. This LICENSE authorizes you to make or download one copy of the Documentation for each additional copy authorized by the volume LICENSE, provided that each such copy contains all of the Documentation’s proprietary notices.

2. Term. This Agreement is effective for an unlimited duration unless and until earlier terminated as set forth herein. This Agreement will terminate automatically if you fail to comply with any of the limitations or other requirements described herein. Upon any termination or expiration of this Agreement, you must destroy all copies of the Software and the Documentation.

3. Updates. For the time period specified in the applicable price list or product packaging for the Software, you are entitled to download revisions or updates to the Software when and as MIRAGE publishes them via its electronic bulletin board system, website or through other online services. For a period of thirty (30) days from the date of the of original purchase of the Software, you are entitled to download one(1) revision or upgrade to the Software when and as MIRAGE publishes it via its electronic bulletin board system, website or through other online services. After the specified time period, you have no further rights to receive any revisions or upgrades without purchase of a new LICENSE to the Software.

4. Ownership Rights. The Software is protected by German copyright laws and international treaty provisions. MIRAGE and its suppliers own and retain all right, title and interest in and to the Software, including all copyrights, patents, trade secret rights, trademarks and other intellectual property rights therein. Your possession, installation, or use of the Software does not transfer to you any title to the intellectual property in the Software, and you will not acquire any rights to the Software except as expressly set forth in this Agreement. All copies of the Software and Documentation made hereunder must contain the same proprietary notices that appear on and in the Software and Documentation.

5. Restrictions. You may not sell, lease, LICENSE, rent, loan or otherwise transfer, with or without consideration, rent, lease, loan or resell the Software. MIRAGE updates its Software frequently and performance data for its Software change. Before conducting benchmark tests regarding this Software, contact MIRAGE to verify that you possess the correct Software for the test and the then current version and edition of the Software. Benchmark tests of former, outdated or inappropriate versions or editions of the Software may yield results that are not reflective of the performance of the current version or edition of the Software. You agree not to permit any third party (other than third parties under contract with you which contains nondisclosure obligations no less restrictive than those set forth herein) to use the LICENSED Program in any form and shall use all reasonable efforts to ensure that no improper or unauthorized use of the LICENSED Program is made. You may not permit third parties to benefit from the use or functionality of the Software via a timesharing, service bureau or other arrangement, except to the extent such use is specified in the applicable price list, purchase order, or product packaging for the Software. You may not transfer any of the rights granted to you under this Agreement. You may not reverse engineer, decompile, or disassemble the Software, except to the extent the foregoing restriction is expressly prohibited by applicable law. You may not modify, or create derivative works based upon, the Software in whole or in part. You may not copy the Software or Documentation except as expressly permitted in Section 1 above. You may not remove any proprietary notices or labels on the Software. All rights not expressly set forth hereunder are reserved by MIRAGE.

6. Warranty and Disclaimer.

a. Limited Warranty. MIRAGE warrants that for sixty (60) days from the date of original purchase the media (e.g., diskettes) on which the Software is contained will be free from defects in materials and workmanship.

b. Customer Remedies. MIRAGE’ and its suppliers’ entire liability and your exclusive remedy for any breach of the foregoing warranty shall be, at MIRAGE’s option, either (i) return of the purchase price paid for the LICENSE, if any, or (ii) replacement of the defective media in which the Software is contained. You must return the defective media to MIRAGE at your expense with a copy of your receipt. This limited warranty is void if the defect has resulted from accident, abuse, or misapplication. Any replacement media will be warranted for the remainder of the original warranty period. Outside the United States, this remedy is not available to the extent MIRAGE is subject to restrictions under United States export control laws and regulations.

c. Warranty Disclaimer. Except for the limited warranty set forth herein, THE SOFTWARE IS PROVIDED ‘AS IS.’ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MIRAGE DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT WITH RESPECT TO THE SOFTWARE AND THE ACCOMPANYING DOCUMENTATION. YOU ASSUME RESPONSIBILITY FOR SELECTING THE SOFTWARE TO ACHIEVE YOUR INTENDED RESULTS, AND FOR THE INSTALLATION OF, USE OF, AND RESULTS OBTAINED FROM THE SOFTWARE. WITHOUT LIMITING THE FOREGOING PROVISIONS, MIRAGE MAKES NO WARRANTY THAT THE SOFTWARE WILL BE ERROR-FREE OR FREE FROM INTERRUPTIONS OR OTHER FAILURES OR THAT THE SOFTWARE WILL MEET YOUR REQUIREMENTS.

7. Limitation of Liability. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT, CONTRACT, OR OTHERWISE, SHALL MIRAGE OR ITS SUPPLIERS BE LIABLE TO YOU OR TO ANY OTHER PERSON FOR ANY INDIRECT, CONSE-QUENTIAL OR PURELY FINANCIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR FOR ANY AND ALL OTHER DAMAGES OR LOSSES. IN NO EVENT WILL MIRAGE BE LIABLE FOR ANY DAMAGES IN EXCESS OF THE LIST PRICE MIRAGE CHARGES FOR A LICENSE TO THE SOFTWARE, EVEN IF MIRAGE SHALL HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY TO THE EXTENT THAT APPLICABLE LAW PROHIBITS SUCH LIMITATION.

8. United States Government. The Software and accompanying Documentation are deemed to be ‘commercial computer software’ and’ commercial computer software documentation,’ respectively, pursuant to DFAR Section 227.7202 and FAR Section 12.212, as applicable. Any use, modification, reproduction, release, performance, display or disclosure of the Software and accompanying Documentation by the United States Government shall be governed solely by the terms of this Agreement and shall be prohibited except to the extent expressly permitted by the terms of this Agreement.

9. Export Controls. You have been advised that the Software and Documentation (the ‘Products’) are subject to the U.S. Export Administration Regulations. You shall not export, import or transfer Products contrary to U.S. or other applicable laws, whether directly or indirectly, and will not cause, approve or otherwise facilitate others such as agents or any third parties in doing so. You represent and agree that neither the United States Bureau of Export Administration nor any other federal agency has suspended, revoked or denied your export privileges. You agree not to use or transfer the Products for end use relating to any nuclear, chemical or biological weapons, or missile technology unless authorized by the U.S. Government by regulation or specific LICENSE. Additionally, you acknowledge that the Products are subject to export control regulations in the European Union and You hereby declare and agree that the Products will not be used for any other purpose than civil (non-military) purposes. The parties agree to cooperate with each other with respect to any application for any required LICENSES and approvals, however, You acknowledge it is Your ultimate responsibility to comply with any and all export and import laws and that MIRAGE has no further responsibility after the initial sale to You within the original country of sale.

10.High Risk Activities. The Software is not fault-tolerant and is not designed or intended for use in hazardous environments requiring fail-safe performance, including without limitation, in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, weapons systems, direct life-support machines, or any other application in which the failure of the Software could lead directly to death, personal injury, or severe physical or property damage (collectively, ‘High Risk Activities’). MIRAGE expressly disclaims any express or implied warranty of fitness for High Risk Activities.

11.Miscellaneous. This Agreement is governed by the laws of Germany, without reference to conflict of laws principles. The application of the United Nations Convention of Contracts for the International Sale of Goods is expressly excluded. This Agreement sets forth all rights for the user of the Software and is the entire agreement between the parties. MIRAGE reserves the right to periodically audit you to ensure that you are not using any Software in violation of this Agreement. During your standard business hours and upon prior written notice, MIRAGE may visit you and you will make available to MIRAGE or its representatives any records pertaining to the Software to MIRAGE. The cost of any requested audit will be solely borne by MIRAGE, unless such audit discloses an underpayment or amount due to MIRAGE in excess of five percent (5%) of the initial LICENSE fee for the Software or you are using the Software in an unauthorized manner, in which case you shall pay the cost of the audit. This Agreement supersedes any other communications with respect to the Software and Documentation. This Agreement may not be modified except by a written addendum issued by a duly authorized representative of MIRAGE. No provision hereof shall be deemed waived unless such waiver shall be in writing and signed by MIRAGE or a duly authorized representative of MIRAGE. If any provision of this Agreement is held invalid, the remainder of this Agreement shall continue in full force and effect. The parties confirm that it is their wish that this Agreement has been written in the English language only.

12.MIRAGE CUSTOMER CONTACT. If you have any questions concerning these terms and conditions, or if you would like to contact MIRAGE for any other reason, please write to: MIRAGE Computer Systems GmbH, Auf der Steige 12, 88326 Aulendorf – e-mail: Info@Mirage-Systems.de) . You will find our internet website at www.mirage-systems.de.

Date: October 2010

LA-DE-01082003


Uninstall Licence Protector
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can uninstall Licence Protector using Windows Programs and Features. Select Control Panel, click on Programs and then click on Programs and Features.

You will find Licence Protector in the program list. Select it and then click Uninstall.

When you uninstall

·Your license for this computer will be returned and you can use the Serial Number on another computer (license transfer)

·All your project data will not be deleted and can be used on another computer


Latest Updates
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find below a list of available service packs and upgrades

Update 4.0 to 4.1

Modification history

Upgrade 3.x to 4.0

Detail procedure how to upgrade from 3.x to 4.0


Upgrade 3.x to 4.0
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Modification history version 4.0

For a complete list of all modifications click here

DLL / COM exe / EasyGo

Runs on Windows 8 (32bit and 64bit). Windows 10 requires Service Pack 4.1

Unicode support in all screens including sending the data in Unicode format to the Activation Server (requires Activation Server 4.1)

New Key to disable / enable regular online checks

Option to convert old license files to version 4

API: Property LockIsError

EasyGo: License transfer screen. The Serial Number is displayed after the license transfer is done and also copied into the clipboard

EasyGo: In case a license file is backed up before the license transfer and restored after the transfer, a new online validation is done

EasyGo: The default option in trial mode is to continue with the trial and not to continue to activate the product with a Serial Number

Log file includes information about Windows 8

EasyGo: In case of a copy protection violation (error 1024), the button Activate Again is only visible when the product was activated online

The regular license check sends a new status code which allows the Activation Server 4 to display in the column request type the text: License Validation

EasyGo: Activation by fax displays an e-mail address. Instead of sending a fax the user can e-mail the PDF file.

EasyGo: Activation by e-mail. The e-mail content is no longer automatically inserted as this would not work with Unicode. The user has to paste the clipboard content instead

API: AddModule has 3 new parameters

License Viewer: label of the button Deactivate was renamed to Lock as the button locks a network license and does not deactivate the license

EasyGo: Language related bugs

EasyGo: The character & is now possible for the product name

EasyGo: Activation by e-mail. The e-mail content was not always copied into the clipboard

License Generator

Runs on Windows 8 (32bit and 64bit)

Unicode support in all screens

TAB Activation Server - allows to configure a project and upload a project to the Activation Server 4. The files for the server are automatically generated

The concurrent user feature is now part of the Basic Edition. It is no longer required to buy this feature separately

New option to copy a project

New key type to disable / enable regular online checks

New installer for the License Generator and the SDK

When uninstalling the Generator a license transfer is done so that the Serial Number can be used on another computer

User interface redesign with new icons

Create Project Keys was renamed to Create Project and moved into the File dialog

Supported languages: English, French, German, Spanish, Portuguese

License file upload - writes customer name from upload screen into the license file

The license file for the Licence Protector license does not longer include the information about the update subscription. A new Serial Number is sent out for each main release

New updater for Licence Protector including new configuration options for the udpdater

The project master key functionality is no longer supported as it was seldom used

Right mouse click in date column to delete the date

Width of column - module type - changed

Data Area - option visible = No was displayed

Create Keys - if the additional text was enabled sometimes a wrong text was displayed

Automatic License Generator

Runs on Windows 8 (32bit and 64bit)

Unicode support

The Automatic Generator comes now with an own license file which requires an activation with a Serial Number

License Tester

Support for LicProtector 400.dll and COM exe

All new API commands added

Changes in the project template

New settings for Activation Server configuration

Changes in the key structure

no changes

Products to update

An update is available for:

·Licence Protector - Generator and DLL/ COM exe - Version 4.0

·Automatic Licence Generator - Version 4.0

·Activation Server - Version 4.1

Update eligibility

The update is free if one of the following conditions apply:

·You have a valid update subscription

·Your update subscription expired after May 20th, 2013

·You bought an update or upgrade after April 1st, 2013

·You bought Licence Protector after April 1st, 2013

·You got a free update to version 4 with a promotion

All customers who are eligible for the update will get a new Serial Number and download links until May 20th, 2013. If you didn't get a Serial Number until this day and you are eligible for the update, open a support ticket

How to upgrade your files and source code

Detail upgrade information - especially how to convert project templates and files from version 2.x / 3.x to version 4.

Backward compatibility

Activation Keys

·The LicProtector400.DLL can read all Activation Keys from prior version. It can also create Activation Keys which will work in older versions.

License Files

There is no compatibility regarding the license files as version 4 uses Unicode. Version 4 cannot read older license files and it also cannot create license files for older versions.

Activation Server

·The Activation Server 4.1 can accept Transactions from prior DLL versions

·The Activation Server 4.1 supports all features from Licence Protector 4.0. It is mandatory to upgrade to Activation Server version 4.1 if Licence Protector version 4 is used

If you use the Hosting Server, it will be automatically upgraded. .

Automatic License Generator

As the 4.0 creates license files and Activation Keys. See restrictions above regarding format of the file and key.


How to upgrade older versions
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

As version 4 uses Unicode, older license files cannot be opened with the License Generator or DLL / COM exe of version 4. It also requires a new project template as the encryption keys (Read / Write Key) of the license file have to be in a new format.

To upgrade existing projects follow the steps listed below

Step 1 - Create new project template

You have to create a new project template. Load the old project template into the License Generator 4 and select File, Copy a Project

You have to change the project name.

If you want to use the same Serial Numbers like in the old project, then do not change the Project Secure Key. If you want to use new Serial Numbers, click on the Generate button.

Load the new project template into the License Generator and create a new license file.

Step 2 - Update Activation Server

If you use the Activation Server 4 then

·Change the default settings for the copy protection

·Either configure your hosting account or add the data of your own server

· Update the project on the Activation Server 4

·You can customize the project settings in more detail on the Activation Server 4 within the product configuration.

Activation Server 4.1 has to be installed in case Unicode or license file upload / download is used. Hosting customers are automatically upgraded to this version.

Step 3 - Source Code Changes

You have to change in the Source Code:

· ProgID of the new DLL / COM exe

·Change the ReadKey in the command PrepareAndCheck, PrepareAdvanced, Prepare or PrepareForce. The new ReadKey can be found in the project template

·In case the command AddModule is used you have to add 3 new parameters

·If you are using the license transfer feature with own screens add LocksIsError to find out if the license file was restored after the transfer. Details see transfer a license using custom screens

Step 4 - Installer Package

Add the new DLL / COM exe and the new license file to your installer package.

Step 5 - Upgrade customer licenses

The simplest way to upgrade is to send out new Serial Numbers. If this is not possible because of complex license files with multiple modules or a large user base, there is an option to convert old license files.

To use this feature, you have to additionally (the regular 4.x DLL or COM exe is still required) install and register the special DLL LicProtector314.dll which can be found in the folder ...files for distribution\4.00\Convert v3 to v4. You also have to deliver a new version 4 license file

Use the API command TakeOverLicFile to convert the existing file. The complete file structure of the old file (including keys, system data etc.) is transferred to the new file. Even old Serial Numbers can be used after the conversion is done. Use the new file with the version 4 DLL / COM exe.

Step 6 - Considerations regarding existing activations

The Activation Server 4 service pack 1 (4.1) is mandatory. It ensures a complete backward compatibility.

·Licence Protector DLL / COM exe version 2.x and 3.x can communicate with Activation Server 4.1

·Licence Protector DLL / COM exe version 4 can transfer licenses or make regular online checks with keys / IDS of older versions (requires step 5)

·Licence Protector DLL / COM exe version 4 can download license files which have been uploaded with older version (requires step 5)

Step 7 - Automatic License Generator

The Automatic License Generator 4 is backward compatible regarding the key generation but not with license file generation

·Automatic License Generator 4 can generate keys which can be used in version 3.x

·Automatic License Generator 4 can generate license files which can only be opened by version 4


Service Pack 4.1
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Modification history version 4.1

For a complete list of all modifications click here

DLL / COM exe / EasyGo

Some compilers (known for Visual Studio C++ 2007 an newer) crash when using PrepareAndCheck. The reason is the tag value parameter. Use PrepareAndCheckNT instead

Runs on Windows 10

In case a license is locked, the user can try to reactivate or use a new Serial Number (new option)

Time limited full version (subscription). Once the subscription expires, the user can type in a new Serial Number to prolong the subscription. Screen Full version expired

The files are signed with an EV certificate. The EV certificate is more trusted than a standard certificate - details about EV certificates

Works with font selection 125% (Control Panel, Appearance and Personalization,Adjust screen resolution)

Compiled with Delphi XE 5

In case the main module ID definition is missing then the module ID from the first module is used

Language changes for Sweden, Sczech

The encrypted block for automated e-mail activation was missing in Italian language

License Generator

Works with font selection 125% (Control Panel, Appearance and Personalization,Adjust screen resolution)

Warning message added screen - Update Product on the Activation Server

Automatic License Generator

Creates now license files with Starter, Basic or Professional license instead of Starter Edition license info

License Tester

Supports DLL / COM EXE version 4.1

Changes in the project template

no changes

Changes in the key structure

no changes

Installation Instruction

Automated installation

·Select in the program manager group [image] Check for Updates

·The update is downloaded and installs the License Generator and the DLL / COM exe files

·To update the Automatic License Generator (only necessary if license files are generated) open a support ticket.

Manual Update

· Download Service Pack 4.1 (Licence Generator and DLL / COM exe)

·Launch lpinstall41.exe

Backward compatibility

Activation Keys

·The LicProtector410.DLL can read all Activation Keys from prior version. It can also create Activation Keys which will work in older versions.

License Files

The license file has not changed. Licence Generator 4.0 and DLL / COM exe 4.0 can open license files generated with version 4.1

Activation Server

·The Activation Server 4 can accept Transactions from prior DLL versions

·The Activation Server 4 supports all features from Licence Protector 4.1. It is mandatory to upgrade to Activation Server version 4.1 or newer if Licence Protector version 4 is used

If you use the Hosting Server, it will be automatically upgraded.

Automatic License Generator

As the 4.1 creates license files and Activation Keys. See restrictions above regarding format of the file and key.


Supported operating systems
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector is available for Windows and MAC OS X. A basic copy protection solution is possible for Linux, Android or IOS.

Required products for

· Windows

· MAC OS X

· Linux, Android, IOS


Windows
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To protect Windows applications Licence Protector Starter, Basic or Professional Edition is required.

The Windows product includes

·Licence Protector DLL / COM exe

·License Generator

·Automatic Licence Generator (option)

·Activation Server 4 (option)

Licence Protector DLL / COM exe

The Licence Protector DLL is installed with your application on the end user system.

System Requirements:

·Windows XP SP3,Vista, Windows 7 and Windows 8/8.1, Windows 10

·Windows 2003, Windows 2008 and Windows 2012 Server (no support for Windows Core server)

·All listed operating systems are supported in the 32bit and 64bit version

If you need MAC OS X support use Licence Protector MAC Edition

License Generator

The License Generator is the administration tool to create a license file or key

System Requirements:

·Windows XP to Windows 8 / 8.1, 32bit and 64bit

Automatic License Generator (option)

The Automatic Licence Generator runs as a batch process in online shops or other applications, which provide customer data.

System Requirements:

·Windows XP SP3,Vista, Windows 7 and Windows 8 / 8.1

·Windows 2003, Windows 2008 and Windows 2012 Server

·All listed operating systems are supported in the 32bit and 64bit version

Activation Server

Detail system requirements are available in the Activation Server 4 Online help.


MAC OS X
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To protect MAC OS X applications, Licence Protector MAC Edition is required.

The MAC product includes

·Licence Protector Framework

·Activation Server 4 (MAC Edition license)

System Requirements


Linux, Android, IOS
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To protect applications on non Windows / MAC operating systems like Linux, Android or IOS, a license for Activation Server 4 is required.

The Activation Server 4 provides the back end application for the administration of licenses - create keys, lock licenses, change activations or generate reports.

The implementation covers:

·Online activation with copy protection

·Reinstallation on the same computer

·Regular online checks to revoke a license

·License of multiple features / modules

·Using one Serial Number / ID for multiple computers

it does not cover

·trial version

·network license

·transfer of a license

Implementation guide


Implementation Guide
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To implement a copy protection and license with multiple features for Linux, Android or IOS the following steps are required:

·Retrieve a unique device ID like MAC address or volume ID on Linux. Smartphones do either have a unique device ID, operating system ID or MAC address.

·Hash the ID to an 8 digit number

·Make a screen where the user can type in the Serial Number / ID, name and e-mail address

·Validate the Serial Number / ID using an https request to the Activation Server 4

https://servername/lpweb/KeyGenerator.aspx? |
projectname=demo-easygo& | 'project name defined in the project template
entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4W& | 'Serial Number / ID
instcodetype=13& | 'Installation Code / Hardware ID used for copy protection. This has to match with Selected IDs for initial activation in the product configuration
instcode=170D9F7C& | 'Hardware ID - must be an 8 digit number
requesttype=2& | 'must be 2
moduleid=QHD001& | 'module ID defined in the project template. Normally this is the main module ID.
customername=Smart Inc.& | 'name of the user
email=tom.hanks@smartinc.com | 'e-mail address of the user (optional)
oemname=mycompany& | 'name of the manufacturer of the product. This information is stored on the Activation Server 4 (optional)
allkeys=true& | 'must be set to true
password=ycnsjldsd78z9h | 'password - see security settings. The IP address is automatically sent with the request to the Activation Server 4

Return values

The result will either be

·a unique key (which is the return code for license validation passed) or

an error beginning with the word Status:

·Status: key already used (which means that the Serial Number / ID) was already used on another computer

·Status: key doesn´t exist (which means the Serial Number / ID is unknown)

·Status: module is locked (the Serial Number / ID was locked - license was revoked)

·Status: unknown project (the project name is used for a project which is not uploaded to the Activation Server 4)

·If the validation is OK then store the hardware ID in a save location

·Every time your application is starts, compare the hardware ID with the one you have stored in the save location

Example Link

Click on the link below to validate the Serial / ID qOGE3-5IPb6-9E7IL-3tQ8X-6QU5k-6Si4v using the demo Activation Server 4. It will accept the same Serial Number multiple times as the hardware ID is always the same.

https://registerserver.net/lptest/lpweb/KeyGenerator.aspx?projectname=demo-webapi&entrykey=qOGE3-5IPb6-9E7IL-3tQ8X-6QU5k-6Si4v&instcodetype=13&instcode=170D9F7C&requesttype=2&moduleid=QHD001&customername=Smart Inc.&email=tom.hanks@smartinc.com&oemname=mycompany&allkeys=true&password=ycnsjldsd78z9h

Regular Online Checks / Revoke a license

If you validate the license regularly (eg. every 10 days) you can revoke a license - Details

Features / Module

You can license features / modules. The number of features is not limited. Just add a new module with a unique module ID in the project template. The Serial Number is unique to a feature / module - that means that a Serial Number for module A will not work for module B.

Using one Serial Number / ID on multiple computers

It can be defined, on how many different computers one single Serial Number / ID can be used - Details.

Automatic recovery in case the hardware ID changed

If the hardware ID changed, you can make a new license validation. In case other hardware IDs are still the same, the license will be automatically linked to the new hardware ID. If this feature should be used, you have to provide multiple hardware IDs.

The number of installation codes required depend on the settings defined in product configuration - Selected IDs for reactivation.

If you want to pass multiple installation codes, you have to send ALL possible codes. This version of Licence Protector supports 13 different codes.

You have to omit the value instcodetype and provide all 13 installation codes separated with a semicolon. If for the reinstallation e.g. only 3 hardware IDs are required, the others can be left blank.

https://registerserver.net/lptest/lpweb/KeyGenerator.aspx?projectname=demo-easygo-40&entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4S&instcode=170D9F7C;E1266C60;;CB433287;;;;;;;;;&requesttype=2&moduleid=QHD001&customername=Smart Inc.&email=tom.hanks@smartinc.com&oemname=mycompany&allkeys=true&password=ycnsjldsd78z9h

·You have to use the method GET (not POST) for the https request

·For a complete list of all parameters including the changing of the security parameters like password see Create Keys by external applications

· Sample project file

Activation Server 4 Configuration settings

To use this feature you have to:

·Upload the Serial Numbers to the Activation Server 4. Either import a complete key list with own Serial Numbers / ID or create Serial Numbers using the Activation Server 4

·Configure the Activation Server 4 that only keys are accepted, which are already stored in the database. See Serial Number has to be saved before it can be used in the product configuration how to configure this feature

·Configure a password within the security settings

·Configure how many requests per minute are allowed to block a possible SPAM attack

Sample Configuration


Copy Protection, Licensing, Evaluation, Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers different license, evaluation and copy protection options

· Copy Protection

· Evaluation options

· Basic license options

· Network license options

and multiple activation methods.

It allows to test any number of modules / functions and holds all license information in a license file.


The License File and Modules
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector uses a license file (extension .lic) to store license information. It can contain one ore more modules. A module is a function you want to license, e.g. Basic Version, Add-ON1, Add-ON2. Each module can have individual license information like number of users, time limitation or demo version.

Example

Basic Version, 10 user license, full version

Add-On1, 5 user license, trial version for 10 days

Add-On2, not available

The license file stores a lot of other values like user name, URL for activation server, default values for online validation, concurrent user or copy protection type.

The idea is to have one source code and the complete logic for licensing is provided by the license file, e.g. if the application is an evaluation version or full version, single user or multi user etc.

The license file is not deleted after an update so all license information are always available.

As the file is modified during the program start and during activation, the user needs read, write, modify an delete access for the file.

The license file is encrypted with 2 standard encryption methods + a personal encryption, to ensure that each application, secured with Licence Protector , has a different license file encryption.


Copy Protection - How it works
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a media independent protection - the media itself like CD / DVD, download link or USB flash drive is not modified or protected. The copy protection does not prevent, that you can copy the data from CD to the hard disk or duplicate the CD, but it prevents that the application can be started on multiple machines or that the Serial Number can be used twice.

The license is bound to a specific hardware ID of the PC (e.g. MAC address). The application will start only if the license file is on the specified hardware. This works in a single user environment as well as in a network environment.

The advantage of a software copy protection is:

·media independent - distribute the application via CD / DVD, download, USB flash drive or other media where you can store files

·the application can run without a CD / DVD inserted

·you can produce even one single CD - no need to have 1000 CDs duplicated at once

·no problems with the CD / DVD drives or operating systems because no physical modification (like modification of the CD) is done

The additional step, which is necessary, is to transfer the hardware IDs. With Online activation, this step is automated. With activation by e-mail, fax or phone this is a manual process.

The following hardware IDs are supported:

· Volume ID (1)

· MAC Address of the network adapter (2)

· Hostname (3)

· Netbios Name (4) 1)

· Volume ID and UNC Pathname (5) - recommended for network installations

· MAC Address and UNC Pathname (6)

· IP-Address (7) 1)

· Volume ID + MAC Address + Hostname + UNC Pathname (8) 1)

· Volume ID + MAC Address + Hostname (9) 1)

· Hostname and UNC Pathname (10) - recommended for a server applications

· USB flash drive (11) 1)

· Windows Domain(12) 1)

· Windows ID (13) - recommended for single user installations

Details as well as Pros and Cons about each criteria can be found in Part II - Details about Copy Protection

You can also use your own hardware IDs - see chapter Use own hardware IDs

1)

This feature is only available in the Professional Edition.

If a hardware ID can not be retrieved (e.g. there is no network adapter) then the code is empty.

Installation codes which work only for single PC installations

· Netbios Name

· USB flash drive

· Windows Domain

· Windows ID (recommended)

Server license

For a server license only use an installation code combined with the UNC pathname like code 5, code 6, code 8 or code 10


Evaluation Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The evaluation version allows to start the application for a specific time without registration. During each program start, the days left for evaluation are displayed.

The following evaluation options are possible

·Limit number of days after first program start

·Limit until a specified expiry date

·Just display the evaluation screen to register but always allow a program start (evaluation without time limitation)

· No evaluation version - Serial Number is mandatory

· Limit number of program starts

· The evaluation version cannot be activated. Full version requires a new installation package

If your application is in evaluation mode and the application is uninstalled and then reinstalled, this is automatically detected. The application will have the same number of days left like before the uninstall process.

Example

Evaluation time is 30 days. After 10 days of testing the application, the user uninstalls it and then reinstalls the application. The Start Screen would now display There are 20 days left because Licence Protector detects, that the application was already installed.

If the user would install the application 2 months later because he makes a new download, then the application would instantly show the screen Evaluation Period Expired. This is due to the fact that Licence Protector calculates during the initial installation an final expiry date and the application will never run beyond this date even after an reinstallation.

You can additionally check if the system date was modified - see Check for System Date modification

The evaluation option is available for each module and each module can have a different evaluation time.

Example

·Module A has a time limitation with 20 days

·Module B has a time limitation with 10 days

·Module C expires at 01.01.2009


Basic License Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are different license options available.

Yes / No module

This module type allows to check, if a module / function is available (module is set to Yes) or not (module is set to No).

Definition in project template: ModuleType=4

Counter

A counter is an integer you can use for licensing. This allows retrieving a value and then make an own license check.

Example

Number of Reports = 50

The counter module would return a value of 50. Your application has to ensure, that only 50 reports can be created.

Definition in project template: ModuleType=3

The value range is 0 to 2147483647

To change a counter module with a DLL command use SetVal, Token TLI.

Item Counter

An item counter is similar to a counter and allows to store an integer value AND the names of items.

Definition in project template: ModuleType=5

The value range is 0 to 2147483647

Example

Number of Reports = 50

The license check would provide a report name (e.g. Financial report) and this report name would be stored in the license file. Licence Protector would ensure, that only 50 reports can be created

Depending on the Licence Protector Edition there are limitations regarding the number of modules and available module types. For details see comparison Starter, Basic or Professional Edition.


Network License Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports 3 different types of network licenses:

·license per User

·license per PC

·license per Concurrent User

License per User (Person)

The Windows User name is licensed. Each user, starting the application, will need a license. The windows user name is written into the license file.

This type of license requires more licenses like license per PC. If 2 users would share 1 PC this would result in a 2 user license but only in 1 PC license.

For more details see chapter Network License per User

Definition in project template: ModuleType=1

License per PC

This is often the default license type. Each PC, starting the application, will need a license. The PC name is written into the license file. This type results in less licenses then license per User (e.g. if 2 users share 1 PC then 2 licenses per user are needed but only 1 PC license).

If the application runs on a Citrix / Terminal server, then the hostname of the local PC and not the hostname of the server is used.

For more details see chapter Network License per PC

Definition in project template: ModuleType=2

License per Concurrent User / Floating license

This is a typical license in a huge multi user environment. The application can be installed on an unlimited number of machines but the number of concurrent (simultaneous) users are counted and limited to the specified number. The license is assigned only as long as the application is running. If the application is terminated, the license is available again. If a user logs in with the same user name on 2 different PCs then 2 licenses are used.

Licence Protector offers a sophisticated verification of concurrent user licenses. Machines that hang or crashed are detected and the license is released. This is all done automatically through the application.

Definition in project template: ModuleType=6

All license types work also in a Terminal Server and Citrix Environment. The license information can be displayed within the License Viewer.

For more details see chapter Network License per concurrent user

Depending on the Licence Protector Edition there are limitations regarding the number of modules and available module types. For details see comparison Starter, Basic or Professional Edition.

See also

Network license - how it works
Define network license in project template


Activation Methods
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To activate a product means to turn on Copy Protection and run the software with the specified license options.

There are 4 options to activate a product

· Online Activation via Activation Server 4

· Activation by e-mail

· Activation by Fax

· Activation by Phone

Which activation method to choose depends on the line of business and the number of copies sold. The activation options can be combined, e.g. use 3 out of the 4 options. You can define a default activation method with the option Use as default option.

Online Activation

Preferred option for medium and large sales.

+ Allows to automate the delivery process

+ No administration personnel needed

+ works 24 hours - customer can activate any time

- Internet connection required

- Could be blocked by application firewalls

- Web Activation Server needed

Activation by e-mail

Preferred option if Online Activation is not available. Should be used as an second option in combination with Online Activation

+ Almost available on any PC

+ No firewall problems

- Internet connection required

- Customer has to wait for the Unlock Key

- Administration personnel needed

- Automation of delivery process not possible

Activation by Fax

Alternative option if Online Activation is not available.

+ Good option as an alternative activation method

- Fax required

- Customer has to wait for the Unlock Key

- Administration personnel needed

- Automation of delivery process not possible

Activation by Phone

Alternative option if Online Activation is not available.

+ Almost anybody has a phone

- Only available during business hours

- Administration personnel needed

- Automation of delivery process not possible


Implementing Licence Protector using default workflow
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector requires a Source Code integration. If Source Code is not available, you can use All-In-One Protector which offers an integration without changing the Source Code.

Perform the following steps to implement a default workflow using EasyGo in your application.

·First download a sample source code and add LicProtector410.dll to your project

· Integration in the Source Code

· Create Project Template including personal project encryption keys - (for testing you could use the sample demo-easygo.xml. You could skip this step for a quick evaluation of Licence Protector)

· Create a generic license file

· Distribution

All screens used for product activation and trial version can be viewed in the chapter: Activation and License Screens with EasyGo.

We strongly recommend using this predefined workflow. If it does not suit your needs you can make your custom-made screens and your own workflow

·If you want to provide your own screens (e.g. because you need a Unicode language like Russian or Chinese) and deliver a Serial Number Key - see workflow - Serial Number - own screens. It can also be used if you do need no user interface because the application runs on the server. See also: Server Application or Service

·If you want to provide your own screens and deliver a license file and you do not need online activation - see workflow - license File - own screens

If your application is an application which runs only on the server see chapter: license Testing using a Server Application.


Sample Source Code / Add DLL / COM exe to your project
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Sample Source Code

For the compilers listed below a sample source code is available

· Authorware / Director

· Access Basic

· Excel

·Using C++

·Using C#

·Delphi

·Using Java

·Using PHP

·VB6

·Using VB.NET

·Visual Basic Script

·No Source Code available

Where to find the DLL / COM exe

The folder Licence Protector\4.1\files for distribution\410 contains all Licence Protector components (COM exe and DLLs).

..files for distribution\410

\DLL (signed DLL)

\COMexe (signed EXE version of the DLL - details see below)

\wrapper - only necessary if COM DLLs are not supported

\Convert v3 to v4 - special DLL to convert old license files of version 3.x and 4.x

Using the DLL / COM exe

The recommended component is the LicProtector410.EXE. It is required for a 64bit compile or using .NET 4. The DLL can be used if the COM exe is not supported.

Depending on the development tool you add the DLL with a command like

Private objlic As Object

Set objlic = CreateObject("LicProtector.LicProtectorDLL410")

Usage of different versions on one computer

The LicProtector410.DLL in version 4.1 has the ProgID "LicProtector.LicProtectorDLL410" This allows using an older LicProtector.DLL in combination with older versions of LicProtector.dll on the same system. The ProgID changes with every main release. The file name of the dll is different from the ProgID (file name: LicProtector410.DLL - ProgID: LicProtectorEasyGo410).

The COM exe has the ProgID: LicProtector.LicProtectorEXE410

Registering the DLL / COM exe

The uncompressed LicProtector410.DLL and the LicProtector410.EXE is registered during program installation of Licence Protector.

To deliver your application or use it on different PCs, you have to register the DLL / COM exe either

·during the installation with an installer

·using regsvr32.exe LicProtector410.dll or LicProtector410.EXE /regserver

·alternatively you can use the Licence Protector registration tool.

·an installation without registering the DLL is also possible.

See also: Installation and System Requirements

Limitations

·If your development language does not support COM Server dll use the Wrapper DLL (32bit only) or use All-In-One Protector

·The DLL / COM exe cannot be used in threads

DLL / COM exe version information

First check the latest program version and ProgID you find in the table below or for older versions, in the readme.txt file in the folder ..\files for distribution.

If you are using sample source code from our website always check if you have to change the ProgID.

If you use a CRC check adapt the CRC value and CLSID.

COM exe Version 4.1

LicProtector410.exe (can be found on the folder \files for distribution\COM exe) | ProgID | LicProtector.LicProtectorEXE410
 | CLASSID | 36A5857F-681B-4DCE-A9DD-DC451EECAEDD
 | IID | LicProtector.LicProtectorEXE410
 | LIBID | 2FAA767A-6585-4AE0-B9F4-EA12C6C12A7C
 | CRC32 | 9C32D02E
 | File Version | 4.1.0.630

DLL Version 4.1

LicProtector410.DLL (can be found on the folder \files for distribution\DLL) | ProgID | LicProtector.LicProtectorDLL410
 | CLASSID | FDE534D3-C0C3-47AE-838E-F4D19A058583
 | IID | LicProtector.LicProtectorDLL410
 | LIBID | BEEFFA1A-D2C9-4875-9B7B-2FE406E7A19C
 | CRC32 | 5EE8CD75
 | File Version | 4.1.0.880

COM exe Version 4.0

LicProtector400.exe (can be found on the folder \files for distribution\COM exe) | ProgID | LicProtector.LicProtectorEXE400
 | CLASSID | BBBFEC0C-EF17-45AD-8FAE-9B553A4F7D85
 | IID | LicProtector.LicProtectorEXE400
 | LIBID | 2FAA767A-6585-4AE0-B9F4-EA12C6C12A7C
 | CRC32 | AF588757 , 98E9281A
 | File Version | 4.0.0.629

DLL Version 4.0

LicProtector400.DLL (can be found on the folder \files for distribution\DLL) | ProgID | LicProtector.LicProtectorDLL400
 | CLASSID | B8AFBD85-29A5-43C9-9973-3507C3CF74FA
 | IID | LicProtector.LicProtectorDLL400
 | LIBID | BEEFFA1A-D2C9-4875-9B7B-2FE406E7A19C
 | CRC32 | F834A2C6
 | File Version | 4.0.0.879

Also see special considerations regarding 64bit operating systems.

See also
Wrapper DLL
Register the DLL


Authorware / Director (Macromedia)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

For protecting files created with Authorware or Macromedia Director you have 4 different options:

1.Create one executable file and protect the executable file with All-In-One Protector. (recommended)

2.Make a Source Code integration using additional a tool www.XtraMania.com which allows to address the LicProtector410.dll with complete integration options. This is the most flexible solution but requires development work. It allows to protect application features

3.Make a Source Code integration using the Licence Protector Wrapper DLL. This allows the integration with one DLL calls but has a limited set of features

4.Generate a swf flash. If the file runs in the standard flash player, it will run with All-In-One Protector. This is the most secure solution to protect the content of the flash file but could have limitations if you use special functions, which are not supported by the standard flash player


Access Basic
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the Access Basic sample

·You do not need to add a reference to the Licence Protector DLL in your project, because late binding is used to access the COM Object.

·You can use the Licence Protector object directly with the following command line:
Set lic = CreateObject("LicProtector.LicProtectorDLL410")

·Rebuild your application


Excel
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Excel applications can be protected using All-In-One Protector (www.AllInOne-Protector.com), which does not require any development work. Click here for details


C++
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

C++ needs header files. Depending on the compiler you use they can be automatically created.

First download the c++ sample code

· Visual Studio 2010 (and newer) C++ with MFC

· Visual Studio 2010 (and newer) C++ without MFC

· Visual Studio 2008 C++ with MFC

· Visual Studio 2008 C++ without MFC

· C++ for Version 6.0 with MFC (can also be imported in Visual Studio 2003) for EasyGo

· C++ for Version 6.0 without MFC (can also be imported in Visual Studio 2003) for EasyGo

Using C++ with MFC

Find below how to add a DLL to Visual Studio C++

·In Visual Studio right click on the project and Add a new class

·Choose type "MFC class from TypeLib"

·In the Class Wizard set "Add class from file" and select in "Location" the DLL you have just registered. The DLL can be found in the folder ....\Licence Protector\4.1\files for distribution\DLL

·Press Button ">>" to generate the class from the provided interface

·Keep the Name (e.g. CLicProtectorEasyGo410.h) and press "Finish"

·Now you have a file CLicProtectorEasyGo410.h in your project.

·In file EasyGoDemoView.cpp sample modify the line using the latest version number

#include "CLicProtectorEasyGo410.h"

·In function CEasyGoDemoView::ProtectMe() adapt the lines

CLicProtectorEasyGo410 licProtector; // Licence Protector object

// Create the automation object

BOOL bRes = licProtector.CreateDispatch("LicProtector.LicProtectorDLL410");

·Rebuild the project

Using C++ without MFC

·The DLL can be imported in a c++ project by adding the following line at the top of the source code:

#import "progid:LicProtector.LicProtectorDLL410

·All neccessary include files are generated automatically.

·To create an instance of the Licence Protector object the following lines are needed:

CoInitialize(NULL);

ILicProtectorEasyGo410* lp = NULL;

CoCreateInstance(__uuidof(LicProtectorEasyGo410), NULL, CLSCTX_INPROC_SERVER, __uuidof(ILicProtectorEasyGo410), (void**)&lp);

Only if the #import command is not available with your C compiler use the following method to build a header file

Create header file

·Use the "OLEViewer Version 2.1 or later". It comes with Visual Studio, Win32SDK or can be downloaded from the Microsoft Homepage
http://www.microsoft.com/downloads/details.aspx?FamilyID=5233b70d-d9b2-4cb5-aeb6-45664be858b6&DisplayLang=en

·Open the "oleview.exe"

·Open the LicProtector410dll with "File" - "View TypeLib...". The DLL can be found in the folder ....\Licence Protector\4.1\files for distribution\signed-compressed

·Save the generated text into a ".idl" file

·Open the idl-file with a text-editor and copy the typedef sections from the end to the beginning of the library section. Save the idl-file.

·Search for the "midl.exe" on your system (it comes with Visual Studio or Win32SDK)

·Execute the "midl.exe" with command line parameters (IDL file, header file)
example: midl.exe C:\MIDLTest\LicProtector410.idl /out C:\MIDLTest /header LicProtector410.h

·Use the file CLicProtectorEasyGo410.h in your project.

·In file EasyGoDemoView.cpp sample modify the line using the latest version number

#include "CLicProtectorEasyGo410.h"

·In function CEasyGoDemoView::ProtectMe() adapt the lines

CLicProtectorEasyGo410 licProtector; // Licence Protector object

// Create the automation object

BOOL bRes = licProtector.CreateDispatch("LicProtector.LicProtectorDLL410");

·Rebuild the project

Note: if the "midl.exe" tells you that there is a file missing (for example "OAIdl.Idl"), search your system for it and copy it into the directory of the "midl.exe".

Additional information

The latest information about the ProgID, ClASSID, IID, LIBID can be found here.

As Licence Protector is a COM server DLL it is used the same way you would integrate a Word automation. Just google for - Word Automation DLL C++ to find guides for different compilers.

·For Visual Studio C++ 2007 and newer you need Licence Protector version 4.1

·Compiling with .NET 4 will result in an error. Compile using the COM exe

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


C#
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the C# sample code

· C# 2010 and newer

· C# 2008

Find below how to add a DLL to Visual Studio C#

·In Visual Studio Solution Explorer go to References, select "licenseProtector" and remove it.

·Select "References" and add a reference

·Chose tab "COM"

·Select the "Licence Protector Library" entry whose path points to the new LicProtector410.exe. The COM exe can be found in the folder ....\Licence Protector\4.1\files for distribution\COMexe

·Press button "Select"

·Press button "Ok" - Now the new Licence Protector object is available in your application

·Rebuild your application

The latest information about the ProgID, ClASSID, IID, LIBID can be found here.

As Licence Protector is a COM server DLL it is used the same way you would integrate a Word automation. Just google for - Word Automation DLL C# to find guides for different compilers.

·C# creates an interop.licenseprotector.dll. This DLL must be installed on the same directory like the main EXE file.exe

·Compiling with .NET 4 will result in an error. Compile using the COM exe

An installation without needing administration rights to register the COM exe is possible. See details - Register DLL / COM exe without admin rights

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Delphi
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the Delphi sample source code.

·You do not need to add a reference to the Licence Protector DLL in your project, because late binding is used to access the COM Object.

·You can create the Licence Protector object in Delphi with the following command line:
lic := CreateOleObject(LicProtector.LicProtectorEXE410);. The COM exe can be found in the folder ....\Licence Protector\4.1\files for distribution\COMexe

·The variable for the COM object can be declared as:
lic: OleVariant;

·Rebuild your application

An installation without needing administration rights to register the COM exe is possible. See details - Register DLL / COM exe without admin rights

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Java
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the Java sample source code

Java can not directly access a DLL or ActiveX control. You need a Java - COM/Activex bridge, e.g.

· http://sourceforge.net/projects/jacob-project/ (open source)

· http://www.javain.com/javain/index.jsp (OLEJA)

· http://www.infozoom.de (jacozoom)

· http://j-integra.intrinsyc.com (jintegra)

· http://www.ezjcom.com (EZ JCom)

The provided sample for Java is made with Java 6 and JACOB Java COM Bridge, but it can easily be transferred to another Java version or another Java COM bridge.

Necessary steps using JACOB Java COM Bridge

·Download the Java sample source code from the website

·Download the JACOB Java Com Bridge

·Copy the jacob-1.14-x86.dll into the sytem32 folder or into your application folder

·Make sure that the jar of the Java-COM/ActiveX Bridge is in the project-library and that the path is correct.To config the Jacob Library path, right click on Libraries.Then click on "Properties". Now you can add the file “Jacob.jar” by clicking on the button “Add JAR/Folder

·Make sure that the LicProtector410.exe is installed an registered on the machine. The COM exe can be found in the folder ....\Licence Protector\4.1\files for distribution\COMexe

·Replace all occurrences of the old object (e.g. LicProtector.LicProtectorEXE300) with the latest version, which is LicProtector.LicProtectorEXE410

·If you get compile errors or need more background information - click here. Some XP machines seem to have missing components. It may be usedfull to install the Microsoft Visual C++ 2005 SP1 Redistributable Package. Just add it in your installer and make a shell execute in silent mode: VCRedist_x86.exe /Q

An installation without needing administration rights to register the COM exe is possible. See details - Register DLL / COM exe without admin rights

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


PHP
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

PHP code cannot protected directly. You have to extract important code parts from PHP and place the code into a DLL. Then you protect the DLL with Licence Protector. The DLL can be written with any compiler. If you would directly address the Licence Protector DLL, a hacker could remove the DLL commands.

Another option is to compile PHP to an EXE file. There are different tools which offer this option. Then All-In-One Protector can be used.

How to reference a DLL from PHP see http://www.php.net/manual/en/ref.com.php

See also: Server Application, Service, Web Application

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Other compilers / No Source Code
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you do not have the source code of an application or a DLL cannot be used, it is not possible to use Licence Protector - use instead All-In-One Protector. It allows similar license and product activation options without the need to develop or change source code.

www.AllInOne-Protector.com


Visual Basic .NET

Navigation: Implementing Licence Protector using default workflow > Sample Source Code / Add DLL / COM exe to your project:

VB6
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the VB6 sample source code

Using late binding

·If you use late binding, you do not need to add a reference to the Licence Protector EXE. Note that code completion does not work if late binding is used.

·You can use the Licence Protector object directly with the following command line:
Set lic = CreateObject("LicProtector.LicProtectorEXE410")

·Rebuild your application

Using early binding

·In Visual Basic 6.0 click on the “Project” menu and open the menu item “References…”. Remove the entry "Licence Protector Library" if it is already there

·Then add the new "Licence Protector Library" entry whose path points to the new LicProtector410.exe. The COM exe can be found in the folder ....\Licence Protector\4.1\files for distribution\COMexe

·Now the new Licence Protector object is available in your application.
You can use it with the following command line:
Set lic = New LicProtector.LicProtectorEXE410

·Replace all occurrences of the old object (e.g. LicProtector.LicProtectorEXE300) with the latest version, which is LicProtector.LicProtectorEXE410

·Rebuild your application

An installation without needing administration rights to register the COM exe is possible. See details - Register DLL / COM exe without admin rights

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Visual Basic .NET
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First download the VB.NET sample source code

· VB.NET 2010 and newer

· VB.NET 2008

·In Visual Basic .NET open project properties. Go to page "References" and remove "Licence Protector Library"

·Add a new reference

·In the "Add Reference" window chose tab "COM"

·Select the "Licence Protector Library" entry whose path points to the new LicProtector410.exe. The COM exe can be found in the folder ....\Licence Protector\4.1\files for distribution\COMexe

·Now the new Licence Protector object is available in your application

·Rebuild your application

An installation without needing administration rights to register the COM exe is possible. See details - Register DLL / COM exe without admin rights

Compiling with .NET 4 will result in an error. Compile using the COM exe

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Visual Basic Script
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

VB Script is typically used in office applications like Excel, Access or Word. You could also use All-In-One Protector (www.AllInOne-Protector.com), which does not require any development work. Click here for details

First download the VB Script sample source code

·You do not need to add a reference to the Licence Protector DLL in your project, because late binding is used to access the COM Object.

·You can use the Licence Protector object directly with the following command line:
Set lic = CreateObject("LicProtector.LicProtectorDLL410")

·Rebuild your application


64bit / 32bit support / COM exe
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Licence Protector is a 32bit DLL. It runs on 64bit operating systems like Vista / Windows 7 / Windows 8 64bit or Windows 2008 / 2012 Server 64bit as long as the main application is compiled for 32bit.

If you need a 64bit compile or you compile a .NET application for any CPU or for .NET4, you have to use the COM exe version of Licence Protector - LicProtector410.EXE. It is a DCOM component which can be used by a wide range of compilers. It can be found in the folder The folder Licence Protector\4.1\files for distribution\COM exe

The COM EXE supports 32bit and 64bit operating systems as well as 32bit and 64bit compiles.

There is no need to change the source code (only to change the ProgID) to switch from a 32bit compile to a 64bit compile. Even applications, compiled with 32bit and 64bit within a network can access the same license file.

Depending on the development tool you add the COM exe (like a DLL) with a command like

Private objlic As Object

Set objlic = CreateObject("LicProtector.LicProtectorEXE410")

The LicProtector410.exe in version 4.1 has the ProgID " LicProtector.LicProtectorEXE410" This allows using an older LicProtector.exe in combination with older versions of LicProtector.exe on the same system. The ProgID changes with every main release. The file name of the exe is different from the ProgID (file name: LicProtector410.exe - ProgID: LicProtectorEXE410).

·As the COM exe works with 32bit AND 64bit compiles, you can exclusively use the LicProtector410.EXE instead of the DLL.

·To use the COM exe (64bit) for testing with the License Tester, select EXE right to the Licence Protector version number.

Registration

·The COM exe has to be registered with LicProtector410.EXE /regserver. If the user does not have admin credentials, it will register for this user only. There are some situations where you need to register on machine level (e.g. your application is a service). Then use LicProtector410.EXE /regserver /NOREDIRECT. This requires administrator rights

· Alternatively you can use the Licence Protector registration tool to register without admin rights

Permissions

Some applications may require special permissions for the COM exe (e.g. if they are a service). You can change the permission:

·From the Start menu, click Run and type MMC -32

·Then add the Component Services snap-in from there (File / Add Snap-in)

·In Component Services, click Console root, expand Component Services, expand Computers, and then click My Computer

·Expand DCOM Config and search for LicProtector Obj

·Right click - select properties and then the Security TAB

·Add the users from your service

Errors

A compile setting for any CPU will generate an error 80040154 at runtime. Either use the COM exe (recommended) or change your compile settings to compile for compiled for x86 CPU.

Details

Find below how to change the settings for Visual Basic 2008. Other .NET compilers have a similar option.

To change the platform open the project properties and click under the submenu "Compile" on the button "Advanced Compile Options...":

Click to enlarge

Advanced Compile Options

Now you can change Target CPU from "Any CPU" to "x86".


Compiler is not listed here
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the compiler you are using is not listed here, you can use the sample source code we provide as text information.


Wrapper DLL
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Some development languages like Macromedia Director, Authorware or Borland Builder C++ 5.0 don't support COM Server DLLs. Licence Protector offers additionally a standard Windows DLL with limited options to support theses development tools. This DLL - lpdll410.dll - uses internally the main LicProtector410.dll. The DLL acts as a wrapper to the main DLL with standard DLL interface.

You have to deliver and register the LicProtector410 and lpdll410.dll. The lpwrapper needs no registration.

Download the Wrapper DLL with sample Source Code and check the available DLL commands.

See also - commands of the Wrapper DLL
CheckFulllicense
ShowLicViewer
ValidateModule


CheckFullLicence

Navigation: Implementing Licence Protector using default workflow > Sample Source Code / Add DLL / COM exe to your project > Wrapper DLL:

CheckFulllicense
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This DLL command performs a full license and activation check using EasyGO. It wraps the commands SetLanguage, SecurityLevel, SetRegisterSettings and PrepareAndCheck into one single command. All details of the parameters are described in the function reference of these commands.

Param

Datatype

Example

Description

pcFileName

String

“demo-easygo.lic”

The full path to the license file . See details for UNC pathnames

pcReadKey

String

“r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1

l4KHy0N2yvL0ZBDcX274DHV1BfV7s0R

FpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7

jQq1iP3VM1NNx6j1s64YK299TY71YSrb

K0NdSom29inxM29bPTJ1mmLNV0SNd

C41xCbdT2adSqt2aazQL1dslWy1fGXFi

11YWOv1fFhLt2acufE1hRGXY1VxH0R

0ViybX0XmcNz1lm76W1gQqQe21grLU

1VAc401UqH8l0YHwOD1S46cC20hVp

D1cfAYk299ixt”

The project secure key or Read Key for that license file.

See details - Read Key

pcModuleID

String

“QHD001”

Unique ModuleID – identifies the module to be tested in EasyGo functionality - see details main module

pcUsername

String

“”

The user or item name to check the module for. Normally, you would pass this information only if you have an own user administration. Default option is to use the automatic function - UseWindowsUser = true

bUseWindowsUser

Boolean

true

Determines if the windows login name or hostname should be used as name for the license. Concurrent User uses a combination of username and PC name.

If the module is an Item Counter, provide the name for the item counter in the field Name and set UseWindowsUser to false

iLanguage

Int

0

Language code (0 is language of the operating system - list of Language codes)

iSecurityLevel

int

1

SecurityLevel: 1 is advanced (ReadKey is used), 0 is basic (PSK is used)

pcImageFile

String

“cdc.jpg”

Absolute path to the logo image used in the EasyGo form.

Notice: The Image has to be of format JPEG. Use a size of 175x115 to get the best result. The pixel in the left upper corner is used as transparency color . Also see: Background Image

bLicViewerAllowed

Boolean

true

Controls whether theLicense Viewer is accessible in the EasyGo form. The icon

appears if the link is provided. The option is: Show License Information

Notice: On the EasyGo error screen the License Viewer is always available independent of this parameter.

bSerialIsAK

Boolean

true

Controls whether the Serial Number is a Licence Protector Serial Number or an own ID

pcManufacturer

String

“Mirage Computer Systems”

Name of the manufacturer

pcProductname

String

“CTI Data Connector”

Name of the application which is displayed in the title bar. If value is empty the projectname of the license file is used.

bRegisterOnline

Boolean

true

Controls whether online Registration is allowed. The WebServiceURL in the license file is used for the Activation.

bRegisterBye-mail

Boolean

true

Controls whether registration by e-mail is allowed

pcEMail

String

register@registerserver.net

e-mail-Address to which the e-mail registration has to be sent

bRegisterByFax

Boolean

true

Controls whether registration by fax is allowed

pcFaxumber

String

“+49 721/15159963”

Fax-Number to which the registration form has to be sent

bRegisterByPhone

Boolean

True

Controls whether registration by phone is allowed

pcPhonenumber

String

“+49 700 54885342”

Phone number which has to be called to receive the Unlock Key(s)

pcEMail_Fax_Text

String

“Your registration information is sent to our Activation Center. Please allow 1 to 2 business days to send an unlock key.”

Additional text that appears on the registration e-mail or Fax. May be empty.

iDefaultMethod

Int

0

Controls the primary registration method:

0 = Online (default)

1 = e-mail

2 = Fax

3 = Phone

pcBuyURL

String

“www.mirage-systems.de/cdc/order.html”

URL on which the product can be bought online. If empty no BUY button is visible EasyGo form. The BUY button is only visible until the Serial Number is typed in.

Can also be a link to a file on the local hard disk, e.g. PDF order form

pcHelpURL

String

“www.mirage-systems.de/cdc/activation-guide.html”

URL to provide additional help information for the registration process. The icon

appears if the link is provided. See details for default help.

pcCopyProtectionSwitchOnKey

String

“V3DEq-5CP93-9E4Ik-3tJ8X-lQD5k-6c14X”

Copy Protection Switch On Key - please check documentation

pcCopyProtectionSwitchOffKey

String

“”

Copy Protection Switch Off Key - please check documentation

pcLanguages

String

“2;1”

all Languages that can be used for the Application, separate by semicolon - see: SetRegisterLanguages

bShowError

Boolean

True

if there are errors in the dll, they will be shown in a message box


ShowLicViewer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This commands displays the License Viewer. It opens the license file either in Basic mode (Prepare) or Advanced mode (PrepareAdvanced), sets the language with SetLanguage, displays the License Viewer with ShowLicViewer and closes the license file with quit.

Param | Datatype | Example | Description
pcFileName | String | “demo-easygo.lic” | The full path to the license file . See details for UNC pathnames
pcReadKey | String | “r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1 l4KHy0N2yvL0ZBDcX274DHV1BfV7s0R FpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7 jQq1iP3VM1NNx6j1s64YK299TY71YSrb K0NdSom29inxM29bPTJ1mmLNV0SNd C41xCbdT2adSqt2aazQL1dslWy1fGXFi 11YWOv1fFhLt2acufE1hRGXY1VxH0R 0ViybX0XmcNz1lm76W1gQqQe21grLU 1VAc401UqH8l0YHwOD1S46cC20hVp D1cfAYk299ixt” | The project secure key or Read Key for that license file. See details - Read Key
iLanguage | Int | 20000 | Language code (0 is language of the operating system - list of Language codes)
iSecurityLevel | int | 1 | SecurityLevel: 1 is advanced (ReadKey is used), 0 is basic (PSK is used)


ValidateModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to perform a license check on module level. It opens the license file either in Basic mode (Prepare) or Advanced mode (PrepareAdvanced), checks the module using the ValidateCommand and closes the license file with quit.

Param

Datatype

Example

Description

pcFileName

String

“demo-easygo.lic”

The full path to the license file . See details for UNC pathnames

pcReadKey

String

“r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1

l4KHy0N2yvL0ZBDcX274DHV1BfV7s0R

FpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7

jQq1iP3VM1NNx6j1s64YK299TY71YSrb

K0NdSom29inxM29bPTJ1mmLNV0SNd

C41xCbdT2adSqt2aazQL1dslWy1fGXFi

11YWOv1fFhLt2acufE1hRGXY1VxH0R

0ViybX0XmcNz1lm76W1gQqQe21grLU

1VAc401UqH8l0YHwOD1S46cC20hVp

D1cfAYk299ixt”

The project secure key or Read Key for that license file.

See details - Read Key

pcModuleID

String

“QHD001”

the module to validate

pcUsername

String

“”

The user or item name to check the module for. Normally, you would pass this information only if you have an own user administration. Default option is to use the automatic function - UseWindowsUser = true

bUseWindowsUser

Boolean

true

Determines if the windows login name or hostname should be used as name for the license. Concurrent User uses a combination of username and PC name.

If the module is an Item Counter, provide the name for the item counter in the field Name and set UseWindowsUser to false

iSecurityLevel

int

1

SecurityLevel: 1 is advanced (ReadKey is used), 0 is basic (PSK is used)


Create license File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

EasyGo uses a generic license file. You would distribute the same file to all users within your installation package. The license file is always necessary even if you work only with Activation Keys.

Start the License Generator and load your project template ( [image], Open project files). If you just want to test, use the file ..\EasyGo\demo-easygo.xml.

Typically, you select the default settings for the evaluation version and then save the file.

· Define time limitation

· Define number of licenses (only for network version)

· Define Demo version

·Save the license file -

This will either create a time limited full version or time limited demo version.

Other scenarios are also possible:

· Evaluation version without time limitation

· No Evaluation version- a Serial Number is needed to start the application

· The evaluation version cannot be activated. Full version requires a new installation package

Typical settings for an evaluation version

·The status of the field Activation must be set to none. The status is the trigger to allow activation and is set later to required with the Serial Number.

·The generic license file is without copy protection because the hardware Id's are only available after installation

·If you want to simulate a new installation of your application multiple times on the same test machine see chapter: License File - Testing


Define Time Limitation / Evaluation Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

You can limit the evaluation period

There are 2 different options to limit a module

·Number of days after first usage and/or

·Final expiry date (Valid until day)

If you specify number of days and an expiry date, then the event which happens first, is used.

Example

Expiry date is 10.10.2008, number of days is 10

·First program start is June 5th - program would expire after 10 days on June 15th

·Frist program start is October 5th - program would expire after 5 days on October 10th

When does time limitation start?

Time limitation starts not with installing the program or with opening the license file - it starts with the first usage of the Validate / PrepareAndCheck call for a module.

This allows to start the time limitation for each module separately. Example:

You have 2 modules. Both modules have a trial period of 30 days.

If module A is first used on 01.01.2007, then module A expires at 30.1.2007. If module B is first used on 10.01.2007 then only module B expires at 10.02.2007.

If you want to start the trial period with the installation of the software, then invoke the application after installation and use the validate command for all modules.

Evaluation options, time limitation on module level, limit number of program starts

The evaluation version allows to start the application for a specific time without registration. During each program start, the days left for evaluation are displayed.

The following evaluation options are possible

·Limit number of days after first program start

·Limit until a specified expiry date

·Just display the evaluation screen to register but always allow a program start (evaluation without time limitation)

· No evaluation version - Serial Number is mandatory

· Limit number of program starts

· The evaluation version cannot be activated. Full version requires a new installation package

If your application is in evaluation mode and the application is uninstalled and then reinstalled, this is automatically detected. The application will have the same number of days left like before the uninstall process.

Example

Evaluation time is 30 days. After 10 days of testing the application, the user uninstalls it and then reinstalls the application. The Start Screen would now display There are 20 days left because Licence Protector detects, that the application was already installed.

If the user would install the application 2 months later because he makes a new download, then the application would instantly show the screen Evaluation Period Expired. This is due to the fact that Licence Protector calculates during the initial installation an final expiry date and the application will never run beyond this date even after an reinstallation.

You can additionally check if the system date was modified - see Check for System Date modification

The evaluation option is available for each module and each module can have a different evaluation time.

Example

·Module A has a time limitation with 20 days

·Module B has a time limitation with 10 days

·Module C expires at 01.01.2009

The demo version of Licence Protector always sets an expiry date of 10 days


Define number of licences

Navigation: Implementing Licence Protector using default workflow > Create License File:

Define number of licenses
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Only if you use a network license, you have to specify the number of licenses for the evaluation version.

The license type is defined in the project template, item ModuleType.


Define Demo version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Demo version is just a flag. You have to check it and implement your own limitations like do not save, print etc.


License File - Testing
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In the moment you open a license file, it leaves traces on the PC. Never use a license file twice for testing.

Every time you want to make a new test on the same machine, you have to create a new license file - Icon [image]. Only a new license file guarantees to have the same situation like a user would have, after he installed your software.

Never deliver a file which was used for testing! Always create a new one to use in the installation package.


Function Reference EasyGo - complete licensing with ready to go screens
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

EasyGo offers a comprehensive licensing and copy protection implementation with dialogs in 22 with just a few API calls. All possible license and error situations are covered.

EasyGo is exclusively available for Licence Protector Windows and MAC.

Sample code sequences are in Delphi (Pascal) syntax. If you are not familiar with Pascal here are some hints to understand the included samples:

·Commands are separated by an semicolon

·Blocks are enclosed by keywords “begin” and “end”

·The operator for variable allocation is “:=”. The operator for compare is “=”

Licence Protector comes in 3 editions

·Starter Edition

·Basic Edition

·Professional Edition

Each function is marked with [image] to indicate, for which Edition the function is available.

If a function is only available as an option (for example the concurrent user feature is an option for the Basic Edition), then this is indicated as follows [image].

Functions in order they should be used. The commands marked with ** are required, all other commands are an option.

Start testing using a sample with a complete license workflow.

A complete function reference could be found in the chapter Function Reference.


Sample - complete license workflow
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can download a sample source code for multiple compilers in the FAQ area on our website. This is the best way to start.

Find below a sample which covers complete basic license testing:

·open the license file with the EasyGo screens

·check if it is a time limited trial version - in case the trial expired, displays the screen: Evaluation period expired

·check if the system date was tampered with (only if CheckSysdateChangedwas used). In case of an error displays the screen: System date was tampered

·check if the product is activated - otherwise offers to use one of the specified activation methods

·check if copy protection is OK - in case of an error displays the screen: copy protection violation and try an automatic reactivation

·check if network license is OK - in case of an error displays the screen: No free license available

·check if a user / PC was deactivated -in in case of an error displays the screen: Network license -deactivated

// The sample source code requires a registered Licence Protector dll. The dll is already installed and registered when you install the software development kit including the Licence Generator.

iRes := 0;

sTag := '';

sReadKey := 'r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1l4KHy0N2yvL0ZBDcX274DHV1BfV7s0'

+ 'RFpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7jQq1iP3VM1NNx6j1s64YK299TY71YSrbK0NdSo'

+ 'm29inxM29bPTJ1mmLNV0SNdC41xCbdT2adSqt2aazQL1dslWy1fGXFi11YWOv1fFhLt2ac'

+ 'ufE1hRGXY1VxH0R0ViybX0XmcNz1lm76W1gQqQe21grLU1VAc401UqH8l0YHwOD1S46cC20hVpD1cfAYk299ixt';

result := true;

// the example needs the licence file: demo-easygo.lic

lic := CreateOleObject('LicProtector.LicProtectorDLL410');

except

on E: Exception do

begin

ShowMessage('No or wrong LicenceProtector installed: ' + E.Message);

result := false;

end;

end;

if result then

begin

try

lic.SecurityLevel := 1;// use 1 for Security Level ADVANCED

lic.SetLanguage(0); // Set Default language using the language settings of the operating system - parameter changed from integer to string

lic.SetRegisterLanguages (‘1;2;3;4;6;7;8;9;10;11;12;13;14;15’); //user can select a language

lic.CheckSysdateChanged := true; // Check for system date modification

iRes := lic.SetRegisterLicTransfer(true, ‘default’, ‘this is like a password string’); //activate license transfer option

bOk:= lic.SetNewsletter(1, ‘Licence Protector Newsletter%%1%%Inside Licence Protector%%3%%Licence Protector bulletin d'information%%9%%Licence Protector boletín de noticias‘); //collect newsletter information

bOk := lic.SetNewsletter(2, ‘Inside All-In-One Protector’);

lic.SetRegisterSettings('blackboard.jpg', // Image that is displayed in the Registration form (has to be of format JPEG)

true, // allow License Viewer

true, // Serial is an Activation Key or use your own ID for product activation

'Mirage Computer Systems', // Name of the manufacturer

'E-Learning Made Easy', // Name of the product

true, // use Online-Activation - needs Activation Server

true, // Activation by e-mail?

'registereasygo@registerserver.net', // e-mail-address for activation requests

'', // Subject of the eMail (if empty a default text is used)

true, // Activation by fax

'+49 32121203546, // Fax-Number for incoming Activation requests

true, // Activation by phone

'+49 7525/529339', // phone number for activation requests

'Your registration information is sent to our Activation Center. Please allow 1 to 2 business days to send an Unlock Key.',

// additional text for e-mail and fax, may be empty

0, // Default Registration 0 = online, 1 = eMail, 2 = fax, 3 = phone

'http://www.mirage-systems.de/licence-protector/order.html', // URL for buying the product

'http://www.helpserver.biz/onlinehelp/lp/easygo/3.0/activationhelp/index.html', // URL for online help

' ', //background image

1, //workflow- evaluation version, activate full version. May not be empty if license files with previous versions should be used

1, //collect Basic Activation Data

'support@mycompany.com', //address for support
false// - full version has no time limitation or is time limited

);

iRes := lic.PrepareAndCheck('demo-easygo.lic', sReadKey, 'CU001', '', true, false, sTag);


Define Language
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Define the language for all screens and messages. The default language setting is English but we recommend defining the language even if only English is used. With language code = 0 the language, which is configured in the operating system, is used. If the operating system uses an unsupported language, the default language would be used.

The language, which is in use by Licence Protector, can be retrieved with GetLanguage.

As Licence Protector supports Unicode, a screen with Chinese characters can be used on an English operating system.

Name

SetLanguage

Purpose

Sets the language for Activation Screens, messages and the License Viewer.

Params

Parameter | Type | Example | Note
Language | String | 2 | Language configured in Windows = 0 German – 1 English – 2 (Default language if this command is not used) French – 3 Italian – 4 Portuguese European – 5 (no longer in use. Is converted to 6) Portuguese - 6 Dutch – 7 Swedish – 8 Spanish – 9 Norwegian – 10 Danish - 11 Serbian - 12 Czech - 13 Polish - 14 Turkish - 15 Chinese simple - 16 Chinese traditional - 17 Greek - 18 Lithuanian - 19 Japanese - 20 Russian - 21 Vietnamese - 22 Bulgarian - 23

Returncode

Returncode Type Integer | Note
0 | Language successfully set
8193 | This language is not supported
Other value | Error occurred, see list of return codes

Usage

To change the current language for messages and the License Viewer

Sample

  iRes := lic.SetLanguage(2);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

     << language successfully set to english >>

     ...

See also

GetLanguage, SetRegisterLanguages

·It is possible to use this command before a license file has been opened.

·You can define, that the user gets a list with languages, where he can select the desired language during the first program start with the command SetRegisterLanguages.

·You can always create an own GUI of the end user screens for languages, which are not supported right now - e.g. Russian or Chinese. See chapter Custom-made User Interface


Define Security Level **

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens:

Define Security Level

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector is always backward compatible. The latest version can always read old license files. As there are 2 options for the personal encryption, you have to specify the method.

Define the security level according to the specification in the project template. This information is mandatory. We recommend using Advanced which works with a set of 3 keys. The security level has to be the same like defined in the project template.

Name

SecurityLevel

Purpose

Property to set the security level of a license file.

Params

None

Returncode

Returncode Type Integer | Note
0 | The security level is BASIC (only used for backward compatibility)
1 or other return codes | The security level is ADVANCED - this is the recommended level

Usage

Sets the Security Level before calling Prepare or PrepareForce

Sample

lic.SecurityLevel := 1; << this license file is an ADVANCED one >>

iRes := lic.Prepare(sMyLicfile, ‘r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1l4KHy0N

2yvL0ZBDcX274DHV1BfV7s0RFpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7jQq1iP3VM1NNx6j1s64YK299TY71YSrb

K0NdSom29inxM29bPTJ1mmLNV0SNdC41xCbdT2adSqt2aazQL1dslWy1fGXFi11YWOv1fFhLt2acufE1hRGX

Y1VxH0R0ViybX0XmcNz1lm76W1gQqQe21grLU1VAc401UqH8l0YHwOD1S46cC20hVpD1cfAYk299ixt’);

....

See also

Prepare, PrepareForce, PrepareAdvanced, PrepareSimple

Do not use the Project Secure Key (in the sample: What a beautiful morning) when the SecurityLevel is Advanced. Use the ReadKey within the PrepareAndCheck command.


Check for System Date modification
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Enables checking, if the system date is modified back more than 1 day. See error screen - System date was tampered

This option will stop the application if the date was turned back.

CheckSysdateChanged Command

Name

CheckSysdateChanged

Alternative if property can not be used

Get_CheckSysdateChanged à WordBool

Set_CheckSysdateChanged(WordBool)

Purpose

Property to get or set the date manipulation checking at function Prepare

Params

None

Returncode

Returncode Type Boolean | Note
True | Checking is enabled
False | Checking is not enabled

Usage

Activate the date manipulation checking implicitly at function Prepare. Has to be set before using Prepare.

Sample

Get:

  bIsCheckOn := lic.CheckSysdateChanged;

  << use Boolean bIsCheckOn >>

Set:

  lic.CheckLicChanged := true;

See also

Prepare, SysdateChanged

To unlock the system date lock, you can use any Activation Key - e.g. a key which sets demo version to true or a key without any settings. To open the license file despite the error message, use PrepareForce and then open the License Viewer so that the user can type in a key. The command PrepareAndCheck will offer the License Viewer by default.

If your application is in evaluation mode and the application is uninstalled and then reinstalled, this is automatically detected. The application will have the same number of days left like before the uninstall process. CheckSysdateChanged is an additional test to the test in evaluation mode.

If you want to control that the system date check is only done when the version is in evaluation mode, you need additional checks.

Check System Date only when in Evaluation / Demo mode

Do not use CheckSysdateChanged. Instead use this test sequence

·After the main license check with PrepareAndCheck test your main module if it is in evaluation mode or a demo version

·Check demo version: ValidateEx

·Check time limited mode: NoOfDays

·Only if the version is a demo version or NoOfDays is >0 then check if the System Date was modified with SysDateChanged

·This command gives you full control to decide if you want to continue or not. In case the system date was changed and you do not want to continue display an error page with ShowStartErrorPage using error number 16382 (which will display this page) or display your own error message

See also

How to unlock system date lock?


SetRegisterLicTransfer

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command enables the license transfer option from PC A to PC B. If this command is not used, the license cannot be transferred at a later point of time. It also activates the option to download a license file during activation.

It must be used before the command PrepareAndCheck

You can transfer only a single module or a complete license file including all modules. The license transfer needs an online connection to the Activation Server 4 and is therefore only available, if the product activation method was online.

Name

SetRegisterLicTransfer

Purpose

Adds the information on the Activation Server which is needed for a license transfer

Params

Parameter | Type | Example | Note
TransferLicence | Boolean | true | true = enables a complete license file transfer including all modules and the complete license file content false = only the module will be transferred
File Description | String | default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided. The password is also used with the commands UploadLic, DownloadLic. Should be maximum 40 characters.

Returncode

Returncode Type Integer | Note
0 | Command was successful
Other return codes | Error occurred, see list of return codes

Sample

  iRes := lic.SetRegisterLicTransfer(true, ‘default’, ‘this is like a password string’);

  if iRes = 0 then

  begin

    << command successful >>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

TransferLicence


Customize screens and Activation Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are multiple commands to customize the activation screens and error messages:

·define activation options (online, e-mail, fax, phone)

·define data to collect, e.g. address information and newsletter

·change the text and wording on all screens

·set the language information or let the user select his language

·enable or disable options like buy button, License Viewer

·define background image and logo

·define a workflow

The screen size was designed to work on common screen resolutions with default font size.

·A complete summary of all DLL commands, which allow to customize the screens, can be found in the chapter EasyGo Dialog

·The dialogs need at least a screen resolution of 800 x 480 pixel

·It is possible to create own screens and own workflows - see chapter: Custom-made user interface


Main screen Customization - SetRegisterSettings **
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command defines the main settings of the activation screens, the workflow and also the activation options.

Click on an image to see what you can customize.

Click to minimise

Welcome Screen

Click to enlarge

Standard Activation Data
Click to enlarge

Basic Activation Data
Click to enlarge

Full Activation Data

ActivationDataType

Click on the image to expand

Activation by Phone

Click on the image to expand

Modification Options E-Mail
Click on the image to expand

Modification Options Fax

Name

SetRegisterSettings

Purpose

Set parameters for the EasyGo (PrepareAndCheck) functionality.

Params

Parameter | Type | Example | Note
ImageFile | String | "C:\program files\myapp\mylogo.jpg" | Absolute path to the logo image used in the EasyGo form. Notice: The Image has to be of format JPEG. Use a size of 175x115 to get the best result. The pixel in the left upper corner is used as transparency color . Also see: Background Image
LicViewerAllowed | Boolean | True | Controls whether theLicense Viewer is accessible in the EasyGo form. The icon appears if the link is provided. The option is: Show License Information Notice: On the EasyGo error screen the License Viewer is always available independent of this parameter. You can enable or disable buttons in the License Viewer.
SerialIsAK | Boolean | True | Controls whether the Serial Number is a Licence Protector Serial Number or an own ID
Manufacturer | String | My Company | Name of the manufacturer. Used in error screens
Productname | String | My Product | Name of the application which is displayed in the title bar. If value is empty the projectname of the license file is used.
RegisterOnline | Boolean | True | Controls whether online registration is allowed. The WebServiceURL in the license file is used for the activation.
RegisterBye-mail | Boolean | True | Controls whether registration by e-mail is allowed
e-mail_Address | String | activate@mycompany.com | e-mail-Address to which the e-mail registration has to be sent
sEMailSubject (Note: This parameter is available from version 2.6.4 onwards) | String | Activation Request for my product | Subject line in the e-mail. If empty, a default text is used.
RegisterByFax | Boolean | False | Controls whether registration by fax is allowed
Faxnumber | String | 123456789 | Fax-Number to which the registration form has to be sent
RegisterByPhone | Boolean | False | Controls whether registration by phone is allowed
Phonenumber | String | 987654321 | Phone number which has to be called to receive the Unlock Key(s)
e-mail_Fax_Text | String |  | Additional text that appears on the registration e-mail or fax. May be empty.
DefaultMethod | Integer | 0 | Controls the primary registration method: 0 = Online (default) 1 = e-mail 2 = Fax 3 = Phone
BuyURL | String | http://myproduct.mycompany.com/buy.html | URL to buy the product. If empty no BUY button is visible EasyGo form. The BUY button is only visible until the Serial Number is typed in. Can also be a link to a file on the local hard disk, e.g. PDF order form
HelpURL | String | http://myproduct.mycompany.com/help.html | URL to provide additional help information for the registration process. The icon appears if the link is provided. See details for default help.
BackgroundImageFile | String | "C:\program files\myapp\background.png" | Absolute path to the image for the background. Must be png format. If this image is missing the background is light blue. See details
WorkflowType | Integer | 1 | defines a workflow for a module. The default workflow is specified in the project template, TAG <EasyGoWorkflow> and is used, if the field here is empty (recommended) Possible values
ActivationDataType | Integer | 0 | Defines the activation data to collect 0 = Standard 1 = Basic 2 = Full
ContactAddress | String | support@mycompany.com | contact address which is displayed in error screens - example. If this string is empty the company name from the template (TAG <Manufacturers>) is used
FullVersionIsTimeLimited | Boolean | false | True = Full Version is time limited - Details see workflow

Returncode

Returncode Type Integer | Note
0 | Command was successful
4 | Do not continue - a major error occurred (e.g. insufficient network license) - terminate the application
Other value | Error occurred, see list of return codes

Usage

To customize the EasyGo form. This call is in most cases necessary and has to be done before calling PrepareAndCheck.

Sample

lic.SetRegisterSettings(‘c:\temp\myimage.jpg’,                // ImageFile

      true,                                // Allow License Viewer

      true,                                // Serial is a Key

                       'My Company',                         // Manufacturer

                       ‘My Product’,                         // Productname

                       true,                                // Register Online

                       true,                                // Register By e-mail

                       ‘activate@mycompany.com',                 // e-mail-Address

                        true,                                 // Register By Fax

                       '012345/6789-1',                    // Faxnumber

                       false,                                 // Register By Phone

                       '',                                 // Phonenumber

                       '',                                 // e-mail Fax Text

                       0,                                  // DefaultMethod

                       'http://www.mycompany.com/buymyproduct',           // Buy URL

Help URL               ' http://www.helpserver.biz/onlinehelp/lp/easygo/4.0/activationhelp/index.html ',//

Background Image        'C:\program files\myapp\background.png');                //

Workflow Type           1,                                  //

TimeLimitedFullVer.     false, //

ContactAddress          'support@mycompany.com'

     ...

See also

SetCustomText, SetRegisterLanguages, PrepareAndCheck, SetLanguage, SetRegisterSerialNo

Additional configuration options are available using

· SetNewsletter

· SetRegisterLanguages

· SetCustomText

· Workflow

You can provide the Serial Number for the Activation Screens using SetRegisterSerialNo in case you use a generic Serial Number or you already have another screen, where the user typed in the Serial Number.

Important change if you upgrade from a version before 3.0

The parameter: CopyProtectionSwitchOnKey was replaced with a configuration setting in the project file to handle the status after the activation.


Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens > Customize screens and Activation Options > Main screen Customization - SetRegisterSettings **:

Background Image
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The default background image can be replaced with a customized image. The image requirements are:

1.Size: 640 x 480 pixel

2.Format: PNG

The default image is blue

Default Screen

Tips

·Use only light colors

·If your logo should be transparent on the background, leave the image field property in SetRegisterSettings empty and add the logo on the background image.

Your registration screen could look like this

Click to enlarge

Screen - Green Color Hatch
Click to enlarge

Screen - Line Dye
Click to enlarge

Screen - Vintage
Click to enlarge

Screen - Blue Sunbeam
Click to enlarge

Screen - Blue Snow

Sample Background Images

Select from a wide variety of ready-to-use background images

· Download all background images

Left click on an image below to enlarge

Click to enlarge

Forms
Click to enlarge

Gray
Click to enlarge

Line Dye
Click to enlarge

Sepia
Click to enlarge

Vintage
Click to enlarge

White Background

Variations of Green

Click to enlarge Green | Click to enlarge Green Brick | Click to enlarge Green Bug Eye | Click to enlarge Green Clamb | Click to enlarge Green Color Hatch
Click to enlarge Green Glass | Click to enlarge Green Halo | Click to enlarge Green Hexagon | Click to enlarge Green Honey Comb | Click to enlarge Green Insect
Click to enlarge Green Mirror | Click to enlarge Green Noise | Click to enlarge Green Pin Wheel | Click to enlarge Green Pixelate | Click to enlarge Green Pointillize
Click to enlarge Green Rain | Click to enlarge Green Random | Click to enlarge Green Shutter | Click to enlarge Green Snow | Click to enlarge Green Star Shine
Click to enlarge Green Sun Beam | Click to enlarge Green Triangle | Click to enlarge Green Twilight | Click to enlarge Green Windmill |

Variations of Blue

Click to enlarge Blue | Click to enlarge Blue Brick | Click to enlarge Blue Bug Eye | Click to enlarge Blue Clamb | Click to enlarge Blue Color Hatch
Click to enlarge Blue Glass | Click to enlarge Blue Halo | Click to enlarge Blue Hexagon | Click to enlarge Blue Honey Comb | Click to enlarge Blue Insect
Click to enlarge Blue Mirror | Click to enlarge Blue Noise | Click to enlarge Blue Pin Wheel | Click to enlarge Blue Pixelate | Click to enlarge Blue Pointillize
Click to enlarge Blue Rain | Click to enlarge Blue Random | Click to enlarge Blue Shutter | Click to enlarge Blue Snow | Click to enlarge Blue Star Shine
Click to enlarge Blue Sun Beam | Click to enlarge Blue Triangle | Click to enlarge Green Twilight | Click to enlarge Blue Windmill |


Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens > Customize screens and Activation Options > Main screen Customization - SetRegisterSettings **:

Customer data / address information
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Depending on the field ActivationData there are 3 different options to collect customer data.

Standard - Code = 0

The standard setting collects customer name and e-mail address.

Required fields are company name and e-mail address.

Click to enlarge

Standard Activation Data

Basic - Code = 1

The basic setting collects: customer ID, company name, salutation, first name, last name, country and e-mail address.

Required fields are company name, e-mail address and country.

Click to enlarge

Basic Activation Data

Full - Code = 2

The extended setting collects: customer ID, company name, salutation, academic title, job title, first name, last name, address 1 and 2, postal code, city, state, country, phone, mobile, website, remark (2 lines).

Required fields are company name, e-mail address, address 1, postal code, city and country.

Click to enlarge

Full Activation Data


Online Help für License Screens

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens > Customize screens and Activation Options > Main screen Customization - SetRegisterSettings **:

Online Help for License Screens
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you specify a help URL with SetRegisterSettings, a Help Icon [image] is displayed. The link should direct to a website which offers help during the registration process. You could also invoke a local file - e.g. PDF file.

We provide a generic help for the registration process at http://www.helpserver.biz/onlinehelp/lp/easygo/4.0/activationhelp/index.html. It also includes a Video Tutorial for the product activation. You can alternatively use your own online help. You are welcome to copy the text and modify it to your needs.

A link to a website must begin with http:// and not with www.

Correct link: http://www.mirage-systems.de

Wrong link: www.mirage-systems.de

This can also be a link to an HTML file or PDF file on the local hard disk

The Video Tutorial offers a live demonstration of each activation method.

Start Video Tutorial


Newsletter - SetNewsletter

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Define up to 4 newsletter fields as a checkbox. If selected, this information is collected during product activation and is sent to the Activation Server 4.

The newsletter information is sent if online, e-mail or fax is selected as activation option. It is not available for activation by phone.

The name of the newsletter can be defined for each language separately. The command has to be used for each newsletter (1-4) separately.

Click to enlarge

Newsletter Page

Name

SetNewsletter

Purpose

Checks if an entry (user, computer, item) is registered in a module

Params

Parameter | Type | Example | Note
No | Number | 1 | Newsletter Number 1-4
LanguageTexts | String | Licence Protector Newsletter | see detail example below - define language text

Returncode

Returncode Type Integer | Note
0 | Command was successful
Other return codes | Error occurred, see list of return codes

Sample

  bOk := lic.SetNewsletter(1, ‘Licence Protector Newsletter%%1%%Inside Licence Protector%%3%%Licence Protector bulletin d'information%%9%%Licence Protector boletín de noticias’);

  bOk := lic.SetNewsletter(2, ‘Inside All-In-One Protector’);

See also

SetRegisterSettings

Define Language Text

·If only one Text is defined, then this text is used for all languages

·The text for each language can be defined using %%languageId - see overview about all language IDs

·The first text entry is always the default text. If no separate text for a language is defined, this text is used

Example

Licence Protector Newsletter%%1%%Inside Licence Protector%%3%%Licence Protector bulletin d'information%%9%%Licence Protector boletín de noticias

For German (ID 1), French (ID 3) and Spanish (ID 9) a separate newsletter text is used. For all other languages, the text would be: Licence Protector Newsletter


SetRegisterLanguages
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the user should be able to select a language via a drop down list, you can specify the languages which should be available.

A list box appears in all screens, to select a language

Select language

The language can also be selected, if the user clicks on the Help Icon [image].

Change language

The languages, which should be available in the drop down list, are defined using the language code separated by semicolon.

Example: 1;2;7 would allow to select German, English and Dutch.

If case the user changed the language, the new value can be retrieved with GetLanguage.

The default language is set with SetLanguage.

Name

SetRegisterLanguages

Purpose

Sets all possible languages for the EasyGo page (PrepareAndCheck)

Params

Parameter | Type | Example | Note
Languagelist | String | 2;9;3;4 | Languagecodes (separate by semicolon) One or more language code. Valid codes see SetLanguage

Returncode

Returncode Type Integer | Note
0 | ok
8194 | Function is not implemented in this type of Licence Protector

Sample

  lic.SetRegisterLanguages(‘1;2;9’);

  …

See also

GetLanguage, SetRegisterSettings, SetLanguage, SetCustomText


Change Text Information - SetCustomText
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The text on all screens and for each language can be changed. This function is ideal to change a few line of text but it cannot be used to add a new language.

To change a line of text, specify the language ID, a text ID and the new text.

Name

SetCustomText

Purpose

Checks if an entry (user, computer, item) is registered in a module

Params

Parameter | Type | Example | Note
Language | String | 2 | see overview about all language IDs . Language ID cannot be 0
Index | Integer | 601 | see detail list below - define language text. Range 1-9999
Text | String | I have a Serial Number and I want to activate $product | Text for the selected language and Index. Replaces default text

Returncode

Returncode Type Integer | Note
0 | Command was successful
Other return codes | Error occurred, see list of return codes

Sample

bOk := lic.SetCustomText(2,613, ‘Activation by phone’);

See also

SetRegisterSettings; SetLanguage

Change the text for each language

To change a line of text, you have to search in the language text file. A good idea is to search the English translation and then use this number to find the text in another language. You have to change the text for each language used by your application.

Example 1:

You want to change the following text in Danish language, which has language code 11. Search in language Code 2 = English language

20613, "Phone Activation"

To change the Danish translation

SetCustomText (11,613, 'Telefonaktivering')

Example 2:

You don't work with a Serial Number. Your unique ID is the customer number.

20657, "To further use this product you have to activate it by entering a Serial Number."

To change the English translation

SetCustomText (2,657,'To further use this product you have to activate it by entering your customer number (check your invoice to retrieve the customer number)')

Of course you can change all the other text like: Serial Number required to Customer Number required or Buy a Serial Number to Buy this product now

SetCustomText (2,603,'You don't have a Customer Number?')

SetCustomText (2,604,'Buy this product now')

SetCustomText (2,656,'Customer Number required')

Text followed by a $ sign may never be changed. It is a variable. Examples are $product or $days. The name of the variable is the same in all languages.

Example

20744, "This is an evaluation version. You can evaluate $product for another $days day(s)."

The characters \n insert a new line.

Download language file

Download the latest language text file. It is a zip file which includes, depending on the character set, different TXT files. The English translation can be found in the file: languagecommon_1252_WEUR.unicode. Click here and save it on your hard disk.


SetEasyGoProperty
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Allows to modify the layout / buttons / behaviour of some EasyGo screens.

Name

SetEasyGoProperty

Purpose

Allows to modify the layout / buttons / behaviour of some EasyGo screens.

Params

Parameter | Type | Example | Note
Property | String | ActionAfterSuccess | defines the screen which is changed. For a complete list of all properties see below
Parameter | String |  | Additional parameter for some properties. Values depending on the field Property. For a complete list see below
Value | String | 1 | defines the layout / buttons / behaviour of the screen. Values depending on the field Property. For a complete list see below

Returncode

Returncode Type Integer | Note
0 | Command was successful
Other return codes | Error occurred, see list of return codes

Sample

bOk := lic.SetEasygoProperty('ActionAfterSuccess','', '1');

See also

GetEasyGoProperty

You can retrieve the actual value of each property using GetEasyGoProperty

Property List

The following properties are supported.

ActionAfterSuccess

Changes the screen which is displayed after a successful activation.

Parameter

<not used>

Value

·Value = 0 - the screen is suppressed and does not appear

·Value = 1 - screen appears without the option to apply additional keys

·Value = 2 (default setting) - screen appears with an option to apply additional keys


Additional Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Depending on the license workflow you can use additional configuration options.

·The command: SetRegiserSerialNo places a Serial Number / ID in the product activation screen. This could be useful if you use a product activation, where the user types in only his name but for all activations the same Serial Number / ID is used


Online - / e-mail - background information
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

All screens which could appear during a product activation process are explained in detail in the chapter: Activation and License Screens with EasyGo.

Find below background information about e-mail and Online Activation.

E-mail Activation

Licence Protector uses the command mailto: to open the default e-mail Client. This will mostly work, but there are 2 situations, when it fails:

·The user has no default e-mail client and uses a Browser based e-mail system. To cover this situation a screen is displayed explaining that the e-mail content including the e-mail address to send the e-mail is in the clipboard. The user could just open the e-mail client and paste the e-mail content.

Click to enlarge

E-Mail - activation in process

·There is a text size limit for the command mailto: If the text would be truncated the users gets the following message within the e-mail client:

Due to technical reasons the e-mail content can not be inserted automatically. It is in the clipboard and you should insert it by pressing CTRL-V or right-click and select 'Insert'

Some e-mail Clients like Outlook or Live Mail support MAPI. There is no size limit for text. You can enable to use MAPI with the command: UseMapi. If MAPI is not available on the end user system, then callto: is used. There could be situations where using MAPI on a system without MAPI available results in an error. Therefore the default setting is UseMapi=false.

It is recommended to use the command UseMap if e-mail activation is required.

All screens - Activation by e-mail

Online Activation

In case an internet connection is available, the online activation works in 99% because of comprehensive application logic of Licence Protector:

·An http or https command is used on port 80 to simulate a Browser. If the end user has a standard firewall or standard router it will always work. An internal ticket system ensures that despite the standard http command only the Licence Protector can communicate with the Activation Server 4

·If a proxy server is configured in the Browser (only IE), then the Browser settings for the proxy server are retrieved. It is not used by default. The user has to enable the option to use the proxy server is used (configuration also possible with UseLocalIEProxy,UseLocalProxy)

·If a local software firewall like McAfee or Norton is used, it will pop-up. The user just has to confirm the access

·Only if an application firewall is used and port 80 is blocked (which is very seldom), then the online activation does not work. The user can change the port in the activation dialog

All screens - Online Activation


Workflow
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector covers all typical workflows of an application. The workflow is set with the command SetRegisterSettings, parameter WorkflowType.

· Full version never expires (perpetual license)

· Full version is time limited (subscription license)

· Special workflows like endless evaluation version

·Special workflows for evaluation versions (evaluation version requires product activation)


Full version never expires (perpetual license)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Find below different workflows for products, where the full version never expires (perpetual license)

Evaluation version, product activation, full version has no time limitation

The product starts in evaluation mode. It is activated using one of the activation methods (online, e-mail, fax, phone). After the product activation, it is a full version without any time limitations.

WorkflowType=1

FullVersionIsTimeLimited=false

ActivationStateAfterCPon=2

License File Settings

By default, the Demo Version / Evaluation Version is either a

· [image] Time limited version with no functional restrictions or

Flag Demo Version is unchecked. Field Valid number of days is set to a value greater then 0

· [image] Time limited Demo Version with restrictions like not printing, no saving etc.

Flag Demo Version is checked. Field Valid number of days is set to a value greater then 0

· Typical start screen in evaluation mode

No evaluation version, product activation, full version

The product has no evaluation period. It needs a Serial Number before it can be used. It is activated using one of the activation methods (online, e-mail, fax, phone). After the product activation, it is a full version without any time limitations

WorkflowType=2

FullVersionIsTimeLimited=false

ActivationStateAfterCPon=2

License File Settings

Field Valid number of days is set to 0

· Typical start screen - No Evaluation Mode


Subscriptions / Maintenance contract
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports selling software based on subscriptions or handling maintenance contracts.

· Subscription based software

· Maintenance contract


Subscription based Software
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A subscription is a license of the full version, which expires after some time. The counterpart of a subscription is a perpetual license which will never expire.

There are 2 options to handle subscriptions

Using Serial Numbers (Windows only)

The expiry date or number of days is coded in the Serial Number. Once the license expires, the user will need a new Serial Number with a new expiry date.

+ An online connection is not mandatory

+ Process could be automated. No manual interaction for the software vendor required

- License transfer and using a Serial Number with days instead of an expiry date would result in starting the subscription again

- Customer has to type in a key every time the subscription is prolonged

- Needs an e-commerce integration for automation to send out Serial Numbers automatically

Best option for yearly subscriptions

Using regular online checks (Windows and MAC)

The user gets a perpetual license. Regular online checks are required to detect if the license was terminated. The user never has to type in a new key when the subscription is prolonged.

+The regular online check is convenient for the customer as he does not have to type in a key

+ License transfer possible

- The software vendor has to manually lock the license

- An online connection is required

Best option for monthly or quarterly subscriptions and if no e-commerce integration is used

Regular license checks

When using regular license checks, you would deliver a version which does not expire (perpetual license). An online check is either done per day, per week, per month or per program start. If the user cancels the subscription you would lock the license on the Activation Server 4. The next online check would then lock the license on the local computer. If the user wants to continue with the subscription, just remove the license lock on the Activation Server 4.

Code implementation

·Workflow - full version never expires (perpetual license)

·Activate regular online checks with 1 day and grace period 0 days or 1 day

·If the subscription expires lock the license on the Activation Server 4

·Screen license deactivated allows to reactivate once the lock is removed on the Activation Server 4

To implement a check per program start

·Workflow - full version never expires (perpetual license)

·Activate regular online checks with 1 day and set the parameter ForceCheck=true in the command CheckModuleSubscription. Set grace period 0 days or 1 day

·If the subscription expires lock the license on the Activation Server 4

Using Serial Numbers

When using Serial Numbers, you would deliver a version which does expire depending on the value in the Serial Number (time limited full version). The Serial Number either includes an expiry date (recommended) or the number of days when the license should expire. An online connection is only required when the Serial Number is used.

Code implementation

·Workflow - full version is time limited (subscription)

·Create a Serial Number with expiry date (recommended) or number of days

·Once the full version (subscription) expires, a new Serial Number is needed. Screen full version expired.


Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens > Workflow Options > Subscriptions / Maintenance contract > Subscription based Software:

Full version is time limited (subscription)
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Find below different workflows for products, where the full version is time limited (subscription product).

Evaluation version, product activation, full version is time limited

The product starts in evaluation mode. It is activated using one of the activation methods (online, e-mail, fax, phone). After the product activation, it is a full version with a time limitation . This workflow is ideal for subscription products which should expire if the subscription is not prolonged.

WorkflowType=1

FullVersionIsTimeLimited=true

ActivationStateAfterCPon=10

The time limitation of the full version is coded in the Serial Number.

Click to enlarge

Create Serial Number with time limitation for full version

·Screen - Full version expired

One or more time dependent message screens can be defined to notify the user before the product expires - Details

License File Settings

By default, the Demo Version / Evaluation Version is either a

· [image] Time limited full Version or

Flag Demo Version is unchecked. Field Valid number of days is set to a value greater then 0

· [image] Time limited Demo Version

Flag Demo Version is checked. Field Valid number of days is set to a value greater then 0

· Typical start screen in evaluation mode

To prevent, that the user can install the product again after it expired, there are 2 options:

· Do not allow a reinstallation (recommended) or

· Activate tamper detection

Once the full version (subscription) expires, a new Serial Number is needed. Screen full version expired.

No evaluation version, product activation, full version is time limited

The product has no evaluation period. It needs a Serial Number before it can be used. It is activated using one of the activation methods (online, e-mail, fax, phone). After the product activation, it is a full version with a time limitation. This workflow is ideal for subscription products which should expire if the subscription is not prolonged.

WorkflowType=2

FullVersionIsTimeLimited=true

ActivationStateAfterCPon=10

License File Settings

Field Valid number of days is set to 0

The time limitation of the full version is coded in the Serial Number.

Click to enlarge

Create Serial Number with time limitation for full version

The setting in the license file - valid number of days or expiry date - is ignored.

· Typical start screen - No Evaluation Mode

·Screen - Full version expired

One or more time dependent message screens can be defined to notify the user before the product expires - Details

To prevent, that the user can install the product again after it expired, there are 2 options:

· Do not allow a reinstallation (recommended) or

· Activate tamper detection

Once the full version (subscription) expires, a new Serial Number is needed. Screen full version expired.


Maintenance contract
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Maintenance contracts

There are 2 ways to handle maintenance contracts

·Make regular online checks, e.g. every 30 days

·Send out an activation key to renew the contract

Pros/Cons

Regular online checks

+The regular online checks is convenient for the customer as he does not have to type in a key

- The software vendor has to manually lock the license

- An online connection is necessary

Using activation keys

+ Completely automated for the software vendor

+ Online connection not required

- Customer has to type in a key

- Needs an e-commerce integration for automation

Using an Activation Key to handle a maintenance contract

You can easily implement, whether your customer may install an update or not. Add a new module of the type Yes/No (module type 4) with the module name Update Subscription. Set a default value for number of days - e.g. 30 days.

Tests within the application

The expiry date is calculated, when you use the ValidatesYes command. During evaluation time of the software, don't test the update subscription module. When the version is a full version (Status of Activation is set to done - GetWebActivation) use ValidatesYes to start the subscription.

Tests within the update program
Your update program now checks, if the module is available and if it has expired. If the module is available and not expired, the update can be installed. Otherwise you display an error message like: Update Subscription has expired and the update cannot install.

The commands are:

· ValidatesYes - to check if the module is set to Yes or No

· RemainingDays - to check if the module is time limited or not

If your customer buys an update subscription, you just send him an Activation Key for the desired time period.

This is a very convenient way to handle updates, because you can place the update on the internet and only customers with a valid update subscription can install it.

You can automate billing in combination with e-commerce providers . They offer to create recurring invoices, e.g. every 3, 6 or 12 month. If the customer pays the invoice, then an Activation Key for the module is generated to prolong the period for 3, 6 or 12 month. See Integration in Online Shops.

Combine this test with a Release Number. You could then install a service pack for a specific release without having a valid update subscription.


Special Workflows
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Evaluation version but NO product activation

The product starts in evaluation mode but the evaluation version cannot be activated and converted to a full version. This workflow is ideal if you deliver a special build of the application for the full version.

WorkflowType=3

FullVersionIsTimeLimited=false

ActivationStateAfterCPon=0

License File Settings

By default, the Demo Version / Evaluation Version is either a

· [image] Time limited full Version or

Flag Demo Version is unchecked. Field Valid number of days is set to a value greater then 0

· [image] Time limited Demo Version

Flag Demo Version is checked. Field Valid number of days is set to a value greater then 0

· Typical start screen - no product activation possible

Endless evaluation version, product activation, full version

The product has an endless evaluation period. This workflow is ideal for a free version, which can be upgraded to a full version with more options.

WorkflowType=1

FullVersionIsTimeLimited=false

ActivationStateAfterCPon=2

Valid number of days = 0

License File setting

To use this option just do not define an expiry date and set days for evaluation to 0. See screenshot.

Typical start screen - evaluation version without time limitation

Endless evaluation version, product activation, full version is time limited

The product has an endless evaluation period. This workflow is ideal for a free version, which can be upgraded to a full version with more options. After the product activation, it is a full version with a time limitation.

WorkflowType=1

FullVersionIsTimeLimited=true

ActivationStateAfterCPon=10

Valid number of days = 0

License File setting

To use this option just do not define an expiry date and set days for evaluation to 0. See screenshot.

The time limitation of the full version is coded in the Serial Number.

Click to enlarge

Create Serial Number with time limitation for full version

One or more time dependent message screens can be defined to notify the user before the product expires - Details

To prevent, that the user can install the product again after it expired, there are 2 options:

· Do not allow a reinstallation (recommended) or

· Activate tamper detection

Evaluation Version needs to be activated

If the evaluation needs to be activated or you want to collect address data, see chapter: Evaluation Version - Special Workflows


Evaluation Version - Special Workflows
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

By default, an evaluation can just be used without registration or product activation. It is possible to collect address information or activate an evaluation version.

· Activate the evaluation version - Serial Number needed

· Activate the evaluation version - No key needed


Evaluation Version requires Activation - Serial Number needed
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If you want to offer an evaluation version, which needs to be activated using a unique Serial Number, use the following workflow. If the evaluation version should be usable without a Serial Number but with a registration and activation, see workflow: Evaluation Version requires registration - no key needed

Create project template

Modify the Project Template and add a new module with type Yes/No (module type = 4). This module is only used for activation of the evaluation version. Set the default value for this module to Yes, days = 0 , EasyGoWorkflow= 2, ActivationStateAfterCpon=2 and name it e.g. Evaluation Version.

Detial settings for template

Use the workflow settings - No evaluation version, product activation, full version for the additional module (sample is QHD002). The user can start the application only if he has a valid Serial Number.

Source Code integration

Implement this logic at the start of your application:

·Open the license file without user interface - PrepareAdvanced - (in case of an error continue with PrepareAndCheck for the main module)

·Check if the activation status of the module Evaluation Version is set to done (GetWebActivation = 2) - this indicates that the demo version was activated

Check - evaluation version

If the evaluation version was NOT activated (GetWebActivation<>2) then

·Use PrepareAndCheck with the moduleID of the evaluation version module (in the example screenshot below it is QHD002). The user has to activate the evaluation version - he gets the screen: No Evaluation Version.

·If the return code is <> 0 quit the application

·Continue with check - main module

Check - main module

Continue with PrepareAndCheck for the main module (QHD001).


Evaluation Version requires registration - no key needed
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to offer an evaluation version, and the evaluation version should only start after it has been registered and activated, you can implement this with a few additional DLL calls. The user can download the demo version, activate it and use it. If the evaluation version should be usable only after the user activates it with a Serial number, see workflow: Evaluation Version requires Activation - Serial Number needed

Modify the Project Template and add a new module with type Yes/No (module type = 4). This module is only used for activation of the evaluation version. Set the default value for this module to No and name it e.g. Evaluation Version.

Use the workflow settings - No evaluation version, product activation, full version for the additional module (sample is QHD002).

The testing has to be done before you use PrepareAndCheck with EasyGo.

Implement this logic at the start of your application:

·Open the license file without user interface - PrepareAdvanced - (in case of an error continue with PrepareAndCheck for the main module)

·Check if the activation status of the module Evaluation Version is set to done (GetWebActivation = 2) - this indicates that the demo version was activated. If you deleted the module after activation (see below), GetWebActivation will return -1

If return code is not 2, then the evaluation version has to be activated - otherwise it was already activated.

·Retrieve all installation codes of the machine with GetInstCode and add all codes to one string. This will be the unique identifier for the Activation Server 4

·In the command SetRegisterSettings, set the field SerialIsAKey to false. This allows using any ID for a Serial Number

·Now define, that the unique identifier you calculated is used as a Serial Number - command SetRegisterSerialNo. This ID will be automatically pasted in the Serial Number field

·Use PrepareAndCheck with the moduleID of the evaluation version module (in the example screenshot below it is QHD002) and WorkflowType=2. The user has to activate the evaluation version - he gets the screen: No Evaluation Version

·If the return code is 0 (activation was successful) then you could delete the module QHD002 (DeleteModule) and continue with PrepareAndCheck for the main module (in the example screenshot below it is QHD001). Before validating the main module, change the workflow to Evaluation version, product activation, full version has no time limitation

·If the return code is <> 0 quit the application


Prepare and Check **

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens:

Prepare and Check

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This is the main command to invoke the EasyGo dialogs and perform the complete basic license testing:

·open the license file with the EasyGo screens

·check if it is a time limited trial version - in case the trial expired, displays the screen: Evaluation period expired

·check if the system date was tampered with (only if CheckSysdateChangedwas used). In case of an error displays the screen: System date was tampered

·check if the product is activated - otherwise offers to use one of the specified activation methods

·check if copy protection is OK - in case of an error displays the screen: copy protection violation and try an automatic reactivation

·check if network license is OK - in case of an error displays the screen: No free license available

·check if a user / PC was deactivated -in in case of an error displays the screen: Network license -deactivated

See List of Return / Error Codes and Other Errors.

Name

PrepareAndCheck

Purpose

Opens the license file and executes the EasyGo form.

Params

Parameter

Type

Example

Note

license file

String

F:\mylic.lic

The full path to the license file . See details for UNC pathnames

ProjectSecureKey/ ReadKey

String

I am a project secure key

The project secure key for that license file.

See details - Read Key

Note: Using a PSK is supported for backward compatibility but should not be used.

ModuleID

String

QHD001

Unique ModuleID – identifies the module to be tested in EasyGo functionality - see details main module

Name

String

The user or item name to check the module for. Normally, you would pass this information only if you have an own user administration. Default option is to use the automatic function - UseWindowsUser = true

UseWindowsUser

Boolean

True

Determines if the windows login name or hostname should be used as name for the license. Concurrent User uses a combination of username and PC name.

If the module is an Item Counter, provide the name for the item counter in the field Name and set UseWindowsUser to false

Quit

Boolean

False

Controls whether the Licence Protector object is available (for further calls) an the license file is not closed or if it is not needed any more and therefore quit.

On false (no quit) the Quit has to be made explicitly at end of the application. For concurrent user testing quit must be set to false. If you need any other testing after PrepareAndCheck also set quit to false

TagValue

String, output

Empty

A variable which can absorb the Tag value of the main module. For details see Using the TAG value (Anti Hacker Strategies)

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened and the main module was successfully checked or even activated. It is also possible that the main module is in an evaluation state.
2 | The license file could not be found or was not opened
4 | EasyGo screen terminated by closing the screen with X (close button) or using the END button
16 | Trial or full version expired
32 | No more free license (only when using network license per computer, user or concurrent user)
1024 | This is a copy protection violation. The Installation Code of the license file doesn’t match with the %ID%. See common reasons for this error
2048 | The file %filename% is not a valid license file or file cannot be opened See common reasons for this error
3010 | Online Activation - The Serial Number was already used on another PC
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
Other return codes | Prepare or Validate failed, see list of return codes

Usage

Important function in order to use the Licence Protector

Sample

  iRes := lic.PrepareAndCheck(sMyLicfile, ‘XTIORHjmV65XFlH/pRYBjxlRJnhCL....’, ‘D1001’, ‘’, true, false, sTagVariable);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

EasyGo, SetRegisterSettings, SetRegisterHelp, SysdateChanged, CheckSysdateChanged, Validate, ValidateEx, Quit, PrepareForce, PrepareAdvanced

Some compilers (known for Visual Studio C++ 2007 an newer) crash when using this command. The reason is the tag value parameter. Use PrepareAndCheckNT instead. The command has the same parameters but no tag value parameter.

You can terminate your application if the error code is not 0. 0 means that everything is OK. The activation does not indicate the status of the license (e.g. trial version, activation done) because EasyGo handles everything automatically.

If you do a manual system date modification check with SysDateChanged, you have to call this command even if the status code of PrepareAndCheck is not 0. SysDateChanged generates an internal flag that the application was started today even when the start fails, e.g. because the license expired. The flag is set automatically if CheckSysDateChanged is used instead.

If you need status information about a module, use GetWebActivation, RemainingDays, RemainigLicenses - list of commands to retrieve module information.

If the version expires, the number of licenses are not sufficient or copy protection is violated, this is indicated with an different error code.

You have to set the SecurityLevel before you can use this command

The PrepareAndCheck command would display screens indicating that an online validation is done. The screens can be suppressed using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage

The command SetRegisterSerialNo would display this Serial Number as a default value in the activation dialogues

See also
Module ID
Read Key
Open multiple license files at the same time


ModuleID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

For EasyGo you need one main module, which is used for the activation of the product. This should be the module which is always included. Otherwise just make a module with the name of the application which is only used for activation.

If you have not such a module just generate a module like My application name and use this module just for the purpose of activation with EasyGo.


Read Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Read Key, used in PrepareAndCheck is the 'key' to your license file. The ReadKey in the project template and PrepareAndCheck must be the same.

It is important to obfuscate the Read Key in your source code.

· How do I hide the Read Key?

· How do I create the Read Key?

· Where do I store the Read Key?


Open multiple license files at the same time
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you need to open multiple license files at the same time, you have to create an instance with the Licence Protector object for each file.


Activation Method
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To find out, how (Online, e-mail, Fax, Phone) the product was activated, use the command GetVal, token LAT. The date of the activation can be retrieved with GetVal, token LAM.

This information can be used to implement options, which are available only with an online connection, e.g. upload a backup of the license file to the Activation Server 4.

The command GetActionsOfLastPrepareAndCheck provides the information, if the product was activated an how it was activated, only once immediately after the product activation occured.


Licensing of multiple modules/features
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports any number of modules / features (= functionality you want to license) inside a license file. You define the modules in the project template.

To validate a module there is a complete set of commands which can retrieve or change any bit of a module information, e.g. module name, number of users, time limitation, activation status etc.

Concept with one main module + optional modules

If your application is sold with one main module (a basic product the customer always have to buy) and several optional modules, the way a module is activated depends on the way you distribute the product and other parameters. The main module is always activated using a Serial Number and the command PrepareAndCheck.

·If you are using an e-commerce system, send out keys manually (you sell only small volumes) or if you can rely on an online connection, you would send out an Activation Key which changes the module information in the license file, e.g. sets a yes/no module to yes or adds additional network licenses. The Activation Key is typically typed in using the License Viewer (or the command ApplyActivationKey) and no additional programming is necessary

·If you sell each single module with a separate CD or you cannot rely on an online connection and you sell large volumes youl, every module would be activated using a Serial Number. See: Activate each module with a Serial Number

·If your application has more than 5 modules a good approach is to deliver a license file + Serial Number

·If you can rely on an online connection, you can deliver by downloading the license file. Only one Serial Number / ID is used to download a customer specific license file with all the specific customer settings including multiple modules

Concept with 2 versions or no main module

If you sell 2 versions of an product (e.g. Standard and Premium version) or a version with several modules but no main module, one of the following approaches could be used:

· 2 Versions - Standard / Premium version

· Version with several modules but no main module

See also
Validate modules
Deliver license file + Serial Number
Activate each module with a Serial Number
Create Activation Keys


Activate each module with a Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To activate each module with a Serial Number, the following code implementation is necessary.

·The user selects the module he wants to use in the application

·Define the Activation Screen using SetRegisterSettings

·Use PrepareAndCheck to allow a product activation using a Serial Number

If the user should be able to type in a key without selecting the module, you have to analyze the key to get the moduleID. The module ID is necessary to start the activation screen with PrepareAndCheck .

All fields of the product activation screens are stored in the license file. To activate another module, only the Serial Number is needed for the next product activation and all the other fields are already filled out with the user data from the first activation.


2 or more modules - no main module
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have no main module (module which the customer has always to buy) and the customer could buy one of the following combinations

·module A

·module B

·module A or module B

·module A and module B

Use the implementation: Activate each module with a Serial Number


2 Versions - Standard / Premium version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If you have 2 versions and the user can either buy a Standard or Premium version, then one implementation option is to use the following workflow.

Create a project template including both modules

Create a project template which includes both modules and set LoadAsDefault for only one module to true. This will load by default only this module in the License Generator. Each module has an own ModuleNumber which ensures, that a key for module 1 can not be used on module 2.

You could also make 2 different project files with different project encryption keys instead of one project file and 2 modules. This is mandatory if each product has additional modules.

Create 2 license files

Now generate 2 license files. One which contains the Standard Version and one which contains the Premium Version.

Start the License Generator. The default module will load. Save a license file as standard.lic. Then change the standard module. Click in the list on the description of the module. A listbox will appear where you can select the Premium Version module. Save a license file as premium.lic.

Installer - allow to select the version

The installer includes both license files (standard.lic and premium.lic). When the user downloads a trial version he can select which version he likes to install. Depending on the version you copy either the premium.lic or standard.lic.

Instead of selecting the product during the installation process, you could install both license files (with different names) and let the user select the product within the application. Just open the license file which belongs to the selected application.

Start application using EasyGo

Depending on the available license file, you start the application using EasyGo either with the module number for Standard or Premium version in the command PrepareandCheck.

Install the version on separate directories e.g. ..\programs\xy Standard and programs\xy Premium

As each license file has an own license file ID, the user has the full evaluation time for both versions, e.g. 15 days for Standard version and 15 days for Premium version

If you want to use only one license file instead of 2 different files, you could use GetModuleList to retrieve the module number, which is used in the license file. The module number defines, if it is a Standard or Premium Version.


Validate modules - command overview
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find below a summary of commands which allow to validate modules.

To use the following commands, the license file needs to be opened first with one of the Prepare commands. See - open a license file.

You can test a module using ValidateEX (recommended), Validate or ValidateAndDecrease. Additional options are:

·Retrieve the module type - GetVal, Token LTY. Module type is also retrievable with GetModuleList (list of all modules within a license file)

·Retrieve module name - ModuleName. Module name is also also retrievable with GetModuleList

·Check if a module exists in a license file - ExistsModule

·Retrieve status Demo version of a module (ValidateEx)

·Retrieve time limitation of a module RemainingDays and/or ExpiredOn

·Retrieve the number of days which have been set for the trial period - NoOfDays

·Retrieve Activation Status of a module - GetWebActivation (2 = product / product activation for a module is done)

·Find out, if a module / license is deactivated using GetVerificationOfModule (result: frozen = 2)

·You can add modules (AddModule) to the license file or remove modules (DeleteModule) . This is necessary if you e.g. install an update of the application with new features

For modules which are from type user, PC, concurrent, Item counter you can

·Retrieve number of licenses and available licenses of a network module - TotalLicences and RemainingLicences. If the module is from type counter then you get the value of the counter with TotalLicences

·Retrieve all entries / user / computer - GetEntriesOfModule

·Deactivate an entry / user / computer - DeactivateEntry

·Activate an entry / user / computer again - ActivateEntry

·Delete all entries / users / computers - RemoveAllItems

·Delete all deactivated entries / user / computer - RemoveDeactivated

·Check if a specified entry / user / computer exists - ExistsEntry

·Check if an entry / user / computer is in use or deactivated - IsEntryActivated

Some other useful commands are:

·Retrieve the customer name (name typed in during registration) - GetCustomer

·Save an Activation Key in the license file - ApplyActivationKey or ApplyInvisibleKey

·In case you have a large number of modules a cache mode is available to read all modules

You can also use EasyGo to test multiple modules. In this case you should use the module name in the Product Name to make it transparent for the user, e.g. CTI Data Connector – Module Database Profiles. This allows testing each module with time limitation and use Activation Keys per module.

If you have more than 5 modules you could deliver a customer specific license file - see license File with EasyGo


Deliver Licence File and Serial Number

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens > Licensing of multiple modules/features:

Deliver license File and Serial Number
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have more than 5 modules it makes sense to deliver a customer specific license file with all the modules enabled the customer has bought. Otherwise the user would have to type in an Activation Key per module. If you can rely on online connection the license file can be automatically downloaded from the Activation Server 4 during the product activation.

This scenario works as follows:

·Evaluation Version with generic license file. Use the same settings like EasyGo

·Customer buys the product - he gets a customer specific license file and a Serial Number

·Type in the customer name

·Copy protection must be set to none

·The Activation status must be set to none

·Set all modules to the values the customer has bought

·The Serial Number is used to activate the product using the EasyGo Workflow - see Workflow - from Distribution to Activation

·Customer copies license file to the installation directory

·Activation of the product using the EasyGo screens and workflow - how to implement EasyGo see Implementing EasyGo

Customer specific license File

This license file should have the same settings like the generic license file (including time limitation for the main module) but all other modules the customer has bought without time limitation and set to the values needed (e.g. set number of licenses bought). The time limitation of the main modules defines the time the customer can use the software before he has to activate it.


Check for Demo Version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To check, if a module is a demo version, you have to use the command ValidateEx. The return code is 1 for demo version.

This is just a status you get back. You have to define in your source which restrictions a demo version should have, e.g. not print or save.

The demo version flag is set in the License Generator, column Demo Version.


Display custom messages
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

You can display own messages and error messages using the EasyGo design.

Display custom messages

This command allows to display a message in a screen which uses the same design as EasyGo.

Tips

·Use GetLanguage to retrieve the language the user selected

·Use SetRegisterSettings to define the logo image

·Use ShowStartErrorPage to display a standard error screen

·Use SetCustomerText to change the wording on default screens

Name

ShowMessagePage

Purpose

Shows a message in an EasyGo-like screen

Params

Parameter | Type | Example | Note
Title | String | ‘Attention’ | The title of the message.
Header | String | ‘Something happened…’ | The header of the message.
Text | String | ‘This is a sample text’ | The text of the message.
ShowLicViewer | Boolean | True | A link to open Licence Protector’s licenseViewer can be displayed if true.

Returncode

Returncode Type Integer | Note
0 | Ok
8194 | Function is not implemented in this type of Licence Protector

Usage

ShowMessagePage should be used to display messages in an EasyGo environment. SetRegisterSettings should be used to set properties like the image on the side.

Sample

  << you want to inform the user about something >>

  ShowMessagePage(‘Attention’, ‘Something happened…’, ‘This happened:…’, false);

  ...

See also

ShowStartErrorPage

Click to enlarge

Customized screen

Display Error Message

This command allows displaying an error message in a screen which uses the same design as EasyGo. The error number must be a valid error code - see list of error codes.

Use SetCustomerText to change the wording on default screens

Example

Error Code 32 (no free license) would pop-up this error screen.

Name

ShowStartErrorPage

Purpose

Shows a Licence Protector error message in an EsayGo-like page.

Params

Parameter | Type | Example | Note
ErrorNo | Integer | 16 | Errornumber

Returncode

Returncode Type Integer | Note
0 | Ok
8194 | Function is not implemented in this type of Licence Protector

Usage

ShowStartErrorPage should be used to display error messages in an EasyGo environment. SetRegisterSettings should be used to set properties like the image on the side.

Sample

  iRes := lic.Validate(‘D1001’, ‘’, true);

  if iRes > 1 then

  begin

    ShowStartErrorPage(iRes);

  end

  else

  begin

     << successfully validated >>

     ...

  ...

See also

Error numbers, SetRegisterSettings, PrepareAndCheck (EasyGo)

Note

The user can terminate the screen only with the END button. The error code is always 0 (and not 4) to indicate, that the message was displayed properly.

Use SetCustomerText to change the wording on default screens


Transfer a license using EasyGo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Add a new menu item (e.g. Help, Transfer license) within your application and make the following Source Code modifications.

All screens, which handle the license transfer including error situations can be found here.

At the start of the application

· Activate the license transfer option using SetRegisterLicTransfer. Set option TransferLicence to true, to transfer the complete file. This command must be used before PrepareAndCheck.

Command to transfer the license

·Retrieve main module ID with MainModuleID

·Retrieve Serial Number / ID with GetSerial. If the Serial Number / ID is empty then the license transfer is not possible as the product is not activated yet

·Transfer the license using the command TransferLicence and the main module ID and Serial Number as parameters

The complete license file is uploaded to the Activation Server 4 and the license file on the local PC is locked.

·If the user restarts the application, an online connection would try to reactivate the license - see details License deactivated / reactivate license. The user gets different options to activate the license again

·If the user installs the application on PC B, he can activate the product using the same Serial Number / ID he used to activate the product on PC A

·Modules from type license per PC or User: All the PC / User entries are removed after the download.

Example: A 10 user license on Server A, 7 licenses are used and 3 licenses are free. After the license transfer 9 licenses are free on Server B (one is used by the PC which does the license transfer)

·The license file can be viewed or changed on the Activation Server 4

A transfer license button could also be added in the License Viewer - see Transfer License button

To find out, if a module / license is deactivated, use GetVerificationOfModule (result: frozen = 2)

If the user makes a backup of the license file before he does the license transfer and restores the license file after the transfer, automatically a new online validation will be done during the next application start. This ensures that the license cannot be used twice.


Additional Licence Testing

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens:

Additional license Testing
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

All Licence Protector DLL calls can be used to do advanced testing or retrieve information on module level.

See - Function Reference


Quit **

Navigation: Implementing Licence Protector using default workflow > Function Reference EasyGo - complete licensing with ready to go screens:

Quit

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Closes the license file and terminates the testing. Should be used at the end of the application.

Name

Quit

Purpose

Ends the usage of Licence Protector and frees its used resources.

Params

None

Returncode

Returncode Type Integer | Note
0 | The license file was successfully closed
Other return codes | Prepare failed, see list of return codes

Usage

Important function in order to end the usage of Licence Protector. Generally used at closing the application.

Sample

  iRes := lic.Quit;

  << ignore the result and continue closing the application >>

  ...

See also

Prepare, Validate

For concurrent user testing quit may be used only at the end of the application. It removes all users from all modules. If you want to terminate the user of a single module (only in concurrent user mode), use the command StopConcurrentUsage.


Use own IDs for product activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A Serial Number contains a lot of information like:

·Number of network licenses

·Expiry date

·Module Number

·Encryption to ensure that the Serial Number only can be used for the license it was made for

·CRC value to ensure that it was not modified

To hold this information every Serial Number has this format

ldGEl-5IPc3-9E8Iq-3tQ8X-PQU5k-6m14D

There are situations, especially with CD distribution, where a short number with only upper case letters would be ideal.

If the following situation fits, you can use any ID as a Serial Number:

·Singe user license

·Network license but you additionally deliver a license file

·Full version has no time limitations after the product activation

If you create the IDs you have to just ensure, that they are unique.

Source Code Settings

In the command SetRegisterSettings set the parameter SerialIsAK to false.

In case you use your own screens.

·Save the ID using SetVal, Token SNR

·After saving, change the Activation State using SetVal, Token WST, Value = 1

The commands ApplyActivationKey, ApplyActivationKeyForProject and ApplyInvisibleKey do not work with own IDs

Activation Server

To ensure, that only IDs are accepted, which belong to this product, you have to upload the IDs to the Activation Server 4 and you have to configure the project, that only uploaded IDs are accepted.

See product configuration setting: Serial Number has to be saved before it can be used


Project Template - define license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The project template defines the structure of a license file.

For every software package you want to protect, you create an own project file. It acts as a template for the license file and holds all modules of the software. The template is an XML file and has to be defined once. If you do not have an XML Editor, you can use the free XML notepad - download: http://www.snapfiles.com/get/xmlnotepad.html

We recommend using the demo-easygo.xml file (folder ..\EasyGo) without modification for testing. This ensures that everything including the Mirage Test Web Server can be used.

To create your personal template, just select TAB File, Create a new Project or copy an existing template

The project template is used by administration to create files and Activation Keys. It contains your personal project keys.

If somebody would steal the template, he can create your files and write an application to open your files. The Professional Edition has an option, that a password is necessary to create a license file/key. This adds additional security.

Store the XML file in a place, where only legitimated persons have limited read/write access.

If you want to use an umlaut (ö,ä,ü etc.) in an project file, then the XML file must be saved in UTF-8 format.


Quick Start
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have an application with just one module and no add-on modules you can change the demo-easygo.xml file (installation folder ..Licence Protector\4.1\easygo\). Only a few values have to be changed to have an application with all settings running on Defaults. You can later fine tune the settings.

All entries are case sensitive – e.g. Absolutedays instead of AbsoluteDays would be wrong

Open the demo-easygo.xml file. Make the necessary changes in:

· Node <Default>

· Node <Module>

See also

Structure of the Template- complete command reference
Module Type
License File ID
TagValue


Node <Default>
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Open the project file and go to the node <Default>. Change the following settings. All other settings can be left on the default settings.

Click to expand

Node <Default>

Manufactures

Type in your company name here. If you sell OEM licenses with different names see full description.

Personal Encrpytion

For testing purpose, do not change the ProjectSecureKey, ReadKey and WriteKey. After finalizing the test, replace it with your own Project Keys to get a personalized encryption.

ProjectName

Short name of your application. It should contain no spaces and is case sensitive. The project name is used to allow different workflows on the Activation Server 4. It is mandatory even if you use no Activation Server 4.

TagValue

Can be used to store any ASCII value. Details see TagValue.

NamelicenseFile

Default name of the license file. It should contain no spaces.

WebServiceUrl

<WebServiceURL> in the node <Default>

Link to the Activation Server 4. The default link goes to the Mirage test server. If you want to use the Activation Server 4, either replace it with the link to your own server or with the link you get if you are using the hosting serviceof Mirage.

Syntax: http://www.registerserver.net/lptest/lpweb/lpws.asmx

To use online activation, set the parameter RegisterOnline in the command SetRegisterSettings to true.

The URL is sent to the default port which is normally port 80

The settings can be changed in the License Generator, TAB Activation Server

·Change settings for own server

·Change settings for Hosting

For Hosting customers the URL is: http://www.registerserver.net/hostingnumber/lpweb/lpws.asmx

AppVersion

Version number of your application. This information is sent to the Activation Server 4 and the value can be retrieved with the DLL command GetVal, Token VER.. It can be changed in the License Generator, TAB Main License. See: How can I test a release number?

MainModuleID

The module ID which is used for the main module - Details

See also

Structure of the Template- complete command reference


Node <Module>
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Open the project file and delete the complete nodes with module ID D1001 and module ID QHD003 so that only module QHD001 is left.

Click to expand

Module definition QHD001

ModuleID

The ModuleID is the reference in the DLL call to address a module. It must be unique per project. The format of the ModuleID is up to 6 characters containing only capital letters A-Z and digits 0 to 9.

For EasyGo you need one main module, which is used for the activation of the product. This should be the module which is always included. Otherwise just make a module with the name of the application which is only used for activation.

Do not use a ModuleID with value 000000

ModuleName

Change ModuleName to the name of your application

ModuleType

All module types like license per computer, user, concurrent user or Yes/No, counter, item counter are supported.

Change the module type for the main module to one of these settings

U or User or 1 = license per user
S or Computer or 2 = license per Computer

C or Counter or 3 = Counter Module
Y or YesNo or 4 = Yes/No Module

I or Item or 5 = ITEM Counter
R or Concurrent or 6 = Concurrent user license

(example: you can either use U or User or 1 to define a user module.)

Depending on the Licence Protector Edition there are limitations regarding the number of modules and available module types. For details see comparison Starter, Basic or Professional Edition.

The maximum value of the User, Computer, Concurrent, Counter and ITEM Counter module is 2147483647. This value can only be used when a license file is created. The maximum value you can set with an Activation Key is 23328.

Value

Change the value tag to:

·Yes - if the module is a Yes/No module

·Number of licenses for the evaluation version if the module is a license per user, computer or concurrent user

Time limitation (Days)

Define the number of days the version can be used without registration. During each program start the days left for evaluation are displayed.

Setting days to 0 allows using the software without time limitation but offers an option for web registration. This makes sense to collect address information (note: to collect complete address information including newsletter information will be available at a later time).

If you set an Expiry Date (<ValidUntilDay>), which is before today’s date, then the version will expire instantly and can not be used without the Serial Number - See No evaluation version - Serial Number is mandatory.

See Date Format.

Demoversion

If you want to have a time limited demoversion, then set Demoversion to true. The limitations of the Demoversion have to be defined in your application.

WebActivation

The status must be set to none. The status is the trigger to allow activation and is set later to required with the Serial Number.

TagValueModule

Can be used to store any ASCII value. Details see TagValue.

Workflow

See details - Workflow

ActivationStateAfterCPon

See details - Activation Status after product activation

See also

Structure of the Template- complete command reference


Structure of the Template
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Below is a complete description of all values of the project template. Values with an (D) are just set as default values in the project file and can be changed within the License Generator when creating a license file for a customer.

All entries are case sensitive – e.g. Absolutedays instead of AbsoluteDays would be wrong.

Tag

Level, [min,max]

Description

Comment

<LicenceProtector> *

0 [1,1]

Surrounds the whole project configuration

<Default> *

1 [1,1]

Surrounds the global project definitions.

<ProjectName>

2 [0,1]

Name of the project. If this item is empty, the filename of the project file is used. The project name is used to administrate the numbers of projects within the License Generator, The project name should be unique.

If no explicit project is set in a Web Activation Call this ProjectName is used. So be sure to use the same name in the definition of your Web Activation configuration. It should contain no spaces and is case sensitive

Example:

Demo project

<ProjectSecureKey> *

2 [1,1]

The PSK is used to encode and decode the license files of a project.

Please use a minimum of 6 characters, 15 and more are recommended. Note: The PSK must never be modified after having been applied, because otherwise you would not be able to read your license files.

Example:

What a beautiful morning

<SecurityLevel>

2 [1,1]

Possible values are BASIC and ADVANCED. In advanced mode the ReadKey and WriteKey are used.

Default is ADVANCED. BASIC is only for backward compatibility to version 1.x or 2.x. See details.

<WriteKey>

2 [0,1]

The Write Key is used in projects with security level ADVANCED to write the license file. It has to be created using the function “File, Create Project Keys” in the License Generator and has to match its Read Key.

It may be longer than 255 characters

.

<ReadKey>

2 [0,1]

The Read Key is used in projects with security level ADVANCED to open the license file. It has to be created using the function “File, Create Project Keys” in the License Generator and has to match its Write Key.

<CopyProtection> (D)

2 [0,1]

The default CopyProtection used in this project:

0 = None
1 = Copy Protection Volume ID

2 = Copy Protection MAC Address

3 = Copy Protection Hostname

4..n see chapter copy protection for the latest options

Example:

2

<Manufacturers> (D)

2 [0,1]

All companies which should be listed in the field Manufacturer in the Licence Generator.

The first entry is the default value. Multiple entries have to be separated by a semicolon

Example:

Mirage Computer Systems GmbH;Another Company;And the third Company

<NextLicFileKey>

2 [0,1]

Next license File ID which is assigned to the license file. If you create licenses at different locations, we recommend that you use an own range of values for each location. Example: use 20000 for location 2 as starting value. The value range is between 1 and 2147483647

This value is automatically increased if a license file is created by a Licence Protector Generator. Ensure to have write-access to the project file.

<NameLicenceFile> (D)

2 [0,1]

Name of the license file which is used as default name when saving the file

Example:

MyApplication

<CustomerName> (D)

2 [0,1]

Default value for the Customer information in the license file. This value is overwritten if interactively changed in License Generator.

Example:

Evaluation

<TagValue>

2 [0,1]

Special string value for the whole license file. There is also a TAG value per module available

Individual information can be stored here

<AllowSetVal>

2 [0,1]

Controls whether this license file may be altered with SetVal calls

Default is yes. See also command SetVal

<DefaultDiffPct>

2 [0,1]

Difference percentage used in Concurrent user modules. This value is used in a module if not explicitly set with <DiffPct>. It not set a built in default value is used

See also command DiffPct

<CheckInterval>

2 [0,1]

Sets the interval of the concurrent user heartbeat in seconds. Default value = -1 ( automatic calculation depending on number of licenses)

See also command SetCheckInterval

<ConcurrentUserLevel>

2 [0,1]

Sets the concurrent user level 0 = Heartbeat, 1 = Light - Details

See also command ConcurrentUserLevel

<TamperDetection>

2 [0,1]

Switch to turn on or off the detection of manipulation of the license file.

Default is no. See also command TamperDetection

<TamperDetectionMode>

2 [0,1]

Sets the mode of the detection of manipulation:

off, auto, manual

Default is off

<TamperDetectionGraceTimes>

2 [0,1]

Allowed negative difference between the Run Numbers of the license file and the local Registry

Default is 0

<WebServiceURL>

2 [0,1]

The URL used to reach the Web Activation Service. Details

Example:

http://www.lptest/lpweb/lpws.asmx

<AllowChangeWASURL>

2 [0,1]

Controls if the set URL to the Web Activation Service can be manually changed by the user.

Default is no. See Online Activation

<ShowWAStartPage>

2 [0,1]

If Web Activation calls are used this setting controls if the Web Activation client start page is shown

Default is true. See also command ShowWAStartPage and Online Activation

<ShowWAProgressPage>

2 [0,1]

If Web Activation calls are used this setting controls if the Web Activation client progress page is shown

Default is true. See also command ShowWAProgressPage and Online Activation

<ShowWAResultPage>

2 [0,1]

If Web Activation calls are used this setting controls if the Web Activation client result page is shown

Default is true. See also command ShowWAResultPage and Online Activation

<LicenceVerification>

2 [0,1]

Sets the mode of the online license verification. Possible values are:

off = turned off

on = Ongoing Verification

frozen = License is locked

deactivated = Verification is deactivated

That mode controls the behaviour of the CheckLicence call. Details Regular Online Checks

Default is off. See also command LicenceVerification

<EndVerification>

2 [0,1]

Controls on which date the ongoing license Verification is stopped. A value of +10 would calculate 10 days from now,

Absolute dates can also be used.

Default is open end.

<Reseller>

2 [0,1]

Name of a Reseller

This name can be changed in the License Generator and is also stored on the Activation Server 4

<AppVersion>

2 [0,1]

Version number of the application

The version number can be can be changed in theLicense Generator and is also stored on the Activation Server 4. Details

<UseAlwaysAllModulesForCPSwOn>

[0,1]

true / false

true - one Unlock Key activates all modules

false (default) - one Unlock Key activates one module where the activation status is set to required

<MainModuleID>

[0,1]

Module ID of the main module

If empty, the first module is the main module

<LicenceModules>

1 [1,1]

Surrounds all modules inside this project

<Module>

2 [1,n]

Surrounds a module definition

<ModuleID>

3 [1,1]

Unique number for each module. May occur only 1 time per project file. It is used as a parameter in most DLL calls.

Format of the ModuleID is up to 6 characters containing only characters A-Z (only upper case) and digits 0 to 9. The ModuleID is case insensitive.

Example:

D1001

<ModuleName>

3 [1,1]

Name of the module. This name is used in License Viewer and should be self-descriptive

Example:

ERP-Module

<ModuleType>

3 [1,1]

Type of a module. Explained in chapter Module Type
U or 1 = license per user
S or 2 = license per Computer
C or 3 = Counter Module
Y or 4 = Yes/No Module
I or 5 = ITEM Counter
R or 6 = Concurrent user license

Example:

Y

<Value> (D)

3 [1,1]

Default for number of licenses in the module. A module of type 4 (Yes/No) is set to yes or no.

Example:

10 (e.g. user licenses in a type 1 module)

Yes (in a type 4 module)

<Days> (D)

3 [0,1]

Default for Number of days in the module. This value starts to count after the first Validate to that module („Module initialisation“)

Example:

10

10 days after the first Validate()-call this module will expire.

<ValidUntilDay> (D)

3 [0,1]

Default value. Explicitly set or calculated date of expiry of this module.

The difference between a fix date set with <ValidUntilDay> to 30 days from today to a value 30 in the field <Days> is that with <ValidUntilDay> the module will expire in 30 days regardless when the software will be installed. When 30 is set in <Days> then the module will expire 30 days after the module is first Validated.

Use an explicit date in the format set in your Windows settings e.g. 5/16/2005 or use a term +X to calculate the date as today plus X days. E.g. +30 calculates a date 30 days from today

<Demoversion> (D)

3 [0,1]

Default value. A yes or no value to set the mode of this module

Example:

Yes

<WebActivation> (D)

3 [0,1]

Default value for Web Activation. Valid values are:

0 or none

1 or required

2 or done

3 or erroneous

See Web Activation for further details.

Example:

Required

<TagValueModule> (D)

3 [0,1]

Default value. Special value to detect a software hack - for details see developer documentation

<LoadAsDefault>

3 [0,1]

A yes/no value to control whether this module is shown when the project is loaded in License Generator or not. With this feature you can load all modules normally needed in a project automatically

<IsSerial>

3 [0,1]

Defines, if a module is a Serial Number

Valid values are:

yes

no

Details see - define Serial Number

<AllowDeactivate>

3 [0,1]

A yes/no value that is only applicable for module type 1, 2 and 5. Defines, whether a user or ITEM can be deactivated in order to free a license.

<ForceOnlineCheck>

3 [0,1]

Only useful for key generation in the Automatic License Generator. A yes/no value to control whether generated keys should be checked with the Web Activation server

<AbsoluteLics>

3 [0,1]

A Yes/No Value. Only useful for key generation in the Automatic License Generator. If set to Yes the number of licenses in Value is not added to the present number of licenses in the license file, it overwrites the number of licenses with the absolute value.

This value is overridden if the value <AbsoluteLics> is set in the product configuration file or in the order file

Example: In a license file there are 5 licenses for a Module X. A key for 3 licenses with AbsoluteLics set to no will increase the number of licenses to a total of 8 licenses. The same key with AbsoluteLics set to yes will set the total number of licenses to 3.

Default is not set.

<AbsoluteDays>

3 [0,1]

A Yes/No value. Only useful for key generation in the Automatic License Generator. If set to Yes the number of days in Value is not added to the present number of days in the license file, it overwrites the number of days with the absolute value.

This value is overridden if the value <AbsoluteDays> is set in the product configuration file or in the order file

If set to yes a key will set the maximum number of days to <Days> unattached if there are already existing number of days in the license file.

Default is not set.

<EasyGoWorkflow>

3 [0,1]

Define a workflow

More Details

<ActivationStateAfterCPon>

3 [0,1]

Default action if an Unlock Key is applied. Changes the status of the value activation to

0 = no change
1 = Activation Required, delete time limitation

2 = Activation done, delete time limitation

11 = Activation required, don't change time limitation

12 = Activation done, don't change time limitation

This entry defines the action if an Unlock Key or a key to enable copy protection is entered (either in the License Viewer or with ApplyActivationKey). A standard action would be to delete the time limitation, delete the demo version flag, set status of activation to done

12

More details

<SubGraceDays>

3 [0,1]

Number of days for the grace period in case the online validation with CheckModuleSubscription fails

0 = no grace days

<ModuleVerification>

2 [0,1]

Sets the mode of the online license verification. Possible values are:

·off = turned off

·on = regular online verification is enabled

·frozen = license is locked

·deactivated = regular online verification is deactivated (see EndModuleVerification)

That mode controls the behavior of the CheckModuleSubscription and CheckModule call. Details Regular Online Checks

Default is off. See also command GetVerificationOfModule

<EndMOduleVerification>

2 [0,1]

Controls on which date the ongoing license Verification is stopped. A value of +10 would calculate 10 days from now,

Absolute dates can also be used

Default is open end.

<configs> | 1 [1,1] | Surrounds all configuration values | Store configuration values and data. See details in the chapter Store data in the license file
<config> | 2 [1,n] | Surrounds a configuration definition |
<name> | 3 [1,1] | Unique name of a configuration value | A unique name to store a value Example: BasicConfiguration
<visible> | 3 [0,1] | A Yes/No value.Defines, if the config value is visible in the License Viewer |
 | [1,1] | Configuration value. Can be any ASCII Text | This is a text


Activation Status after product activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The TAG <ActivationStateAfterCPon> defines the status of the license after the product activation is done. It modifies the status: Activation of a module and changes values, especially the field demo version and time limitation.

It only works if copy protection is activated during the activation process.

The status can also be set using a dll command: SetVal, Token SAC

Default Workflow

The default workflow after a product activation is a full license without any time limitation. The module is changed as follows:

·Time limitation is deleted

·Status of the flag Demoversion is set to No

·Activation Status is set to: Done

The configuration setting would be:

<ActivationStateAfterCPon>2</ActivationStateAfterCPon>

Time limited full version

To keep the time limitation after the product activation is done, use the following settings:

·Time limitation coded in the Serial Number or configured in the license file is kept

·Status of the flag Demoversion is set to No

·Activation Status is set to: Done

<ActivationStateAfterCPon>10</ActivationStateAfterCPon>

Other workflows

A lot of workflows can be defined to change fields after the product is activated.

ActivationStateAfterCPon | Change value after product activation
0 | no value is changed
1 | Activation Status = required Time Limitation = removed Demo Version = No
2 | Activation Status = done Time Limitation = removed Demo Version = No
9 | Activation Status = required Time Limitation = unchanged Demo Version = No
10 | Activation Status = done Time Limitation = unchanged Demo Version = No
17 | Activation Status = required Time Limitation = removed Demo Version = Yes
18 | Activation Status = done Time Limitation = removed Demo Version = Yes
25 | Activation Status = required Time Limitation = unchanged Demo Version = Yes
26 | Activation Status = done Time Limitation = unchanged Demo Version = Yes
33 | Activation Status = required Time Limitation = removed Demo Version = unchanged
34 | Activation Status = done Time Limitation = removed Demo Version = unchanged
41 | Activation Status = required Time Limitation = unchanged Demo Version = unchanged
42 | Activation Status = done Time Limitation = unchanged Demo Version = unchanged


Application Version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Version number of the application. Is stored as a default value in the project template using <AppVersion>. Can be changed in the License Generator. This information is also visible on the tActivation Server 4 to assign a product activation to a version number of the application.

The value can be retrieved and changed with AppVersion during runtime.

Version information in the License Viewer

How can I test a release number?


Configuration for regular online checks
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case regular online checks are used, default values can be defined in the project template

<SubGraceDays> | Number of days for the grace period in case the online validation with CheckModuleSubscription fails | 0 = no grace days
<ModuleVerification> | Sets the mode of the online license verification. Possible values are: ·off = turned off ·on = regular online verification is enabled ·frozen = license is locked ·deactivated = regular online verification is deactivated (see EndModuleVerification) That mode controls the behavior of the CheckModuleSubscription and CheckModule call. Details Regular Online Checks | Default is off. See also command GetVerificationOfModule
<EndMOduleVerification> | Controls on which date the ongoing license Verification is stopped. A value of +10 would calculate 10 days from now, Absolute dates can also be used | Default is open end.


Define module for Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Define the module(s), which are used in EasyGo for product Activation and therefore a Serial Number can be generated. The Serial Number generation is then limited to this module(s) - see: create a Serial Number

TAG: <IsSerial>yes</IsSerial>

Note: You can define multiple modules as a Serial Number.

If this entry is missing, all modules can be selected as a Serial Number.

There is an extra definition required to specify the main module of the application.


License File ID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license file ID is a counter which is increased every time a new license file is created. The counter is stored in the project template in the field <NextLicFileKey>.

If you use the project files in different locations, use per location a different range of values.

Example:

·10000 - 190000 for location 1

·20000 - 209000 for location 2

As the license file ID is also used to track time limitation on a PC, just make a new license file for a new release to allow that a user can test the application again.

You can retrieve the license file ID with GetLicFileID.


Main Module
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Every project needs a main module. This is typically the module which is used for product activation. Even if multiple modules are used for product activation, one module must be defined as the main module. If the definition is missing, then the first module is the main module.

Tag: <MainModuleID>modulenumber</MainModuleID>

There is an extra definition required to specify for which modules a Serial Number can be generated.

The main module ID can be retrieved using MainModuleID.


Module Type
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

A license file consists of one or more modules.

Licence Protector uses a license file (extension .lic) to store license information. It can contain one ore more modules. A module is a function you want to license, e.g. Basic Version, Add-ON1, Add-ON2. Each module can have individual license information like number of users, time limitation or demo version.

Example

Basic Version, 10 user license, full version

Add-On1, 5 user license, trial version for 10 days

Add-On2, not available

The license file stores a lot of other values like user name, URL for activation server, default values for online validation, concurrent user or copy protection type.

The idea is to have one source code and the complete logic for licensing is provided by the license file, e.g. if the application is an evaluation version or full version, single user or multi user etc.

The license file is not deleted after an update so all license information are always available.

As the file is modified during the program start and during activation, the user needs read, write, modify an delete access for the file.

The license file is encrypted with 2 standard encryption methods + a personal encryption, to ensure that each application, secured with Licence Protector , has a different license file encryption.

The module type defines the method a license can be checked. There are different kind of module types available which are defined in the node <Module>.

Basic module types - Yes/No, Counter, Item Counter

There are different license options available.

Yes / No module

This module type allows to check, if a module / function is available (module is set to Yes) or not (module is set to No).

Definition in project template: ModuleType=4

Counter

A counter is an integer you can use for licensing. This allows retrieving a value and then make an own license check.

Example

Number of Reports = 50

The counter module would return a value of 50. Your application has to ensure, that only 50 reports can be created.

Definition in project template: ModuleType=3

The value range is 0 to 2147483647

To change a counter module with a DLL command use SetVal, Token TLI.

Item Counter

An item counter is similar to a counter and allows to store an integer value AND the names of items.

Definition in project template: ModuleType=5

The value range is 0 to 2147483647

Example

Number of Reports = 50

The license check would provide a report name (e.g. Financial report) and this report name would be stored in the license file. Licence Protector would ensure, that only 50 reports can be created

Depending on the Licence Protector Edition there are limitations regarding the number of modules and available module types. For details see comparison Starter, Basic or Professional Edition.

Network module types - License per PC, User, Concurrent user

Licence Protector supports 3 different types of network licenses:

·license per User

·license per PC

·license per Concurrent User

License per User (Person)

The Windows User name is licensed. Each user, starting the application, will need a license. The windows user name is written into the license file.

This type of license requires more licenses like license per PC. If 2 users would share 1 PC this would result in a 2 user license but only in 1 PC license.

For more details see chapter Network License per User

Definition in project template: ModuleType=1

License per PC

This is often the default license type. Each PC, starting the application, will need a license. The PC name is written into the license file. This type results in less licenses then license per User (e.g. if 2 users share 1 PC then 2 licenses per user are needed but only 1 PC license).

If the application runs on a Citrix / Terminal server, then the hostname of the local PC and not the hostname of the server is used.

For more details see chapter Network License per PC

Definition in project template: ModuleType=2

License per Concurrent User / Floating license

This is a typical license in a huge multi user environment. The application can be installed on an unlimited number of machines but the number of concurrent (simultaneous) users are counted and limited to the specified number. The license is assigned only as long as the application is running. If the application is terminated, the license is available again. If a user logs in with the same user name on 2 different PCs then 2 licenses are used.

Licence Protector offers a sophisticated verification of concurrent user licenses. Machines that hang or crashed are detected and the license is released. This is all done automatically through the application.

Definition in project template: ModuleType=6

All license types work also in a Terminal Server and Citrix Environment. The license information can be displayed within the License Viewer.

For more details see chapter Network License per concurrent user

Depending on the Licence Protector Edition there are limitations regarding the number of modules and available module types. For details see comparison Starter, Basic or Professional Edition.

See also

Network license - how it works
Define network license in project template

All values of a module can be changed with an Activation Key, e.g. increase number of users, switch from Demo Version to full version


Project Name
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Short name of your application. It should contain no spaces and is case sensitive. The project name is used to allow different workflows on the Activation Server 4. It is mandatory even if you use no Activation Server 4.


Read Only license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The DLL is able to change the license file, e.g. add a new module or change the values of a license. As this is quite handy when you make a new update which provides a new module, it is also a possible option for an hacker if he has stolen the PSK/ReadKey.

If you are sure that you will never modify your license file using a DLL call with SetVal / AddModule / DeleteModule, you can protect the content of the license file by using the <AllowSetVal>No</AllowSetVal> in the project file or setting this option in the additional settings page within the License Generator. This blocks modifying important information via SetVal like adding new licenses or modules.

Activation Keys can be used any time but a hacker would not be able to modify the license file using the licprotector.dll (even in case of stealing the PSK/Read Key) and make a generic program to modify license files.


SecurityLevel
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To make sure, that every project of a customer has a different encryption, Licence Protector offers 2 methods.

Security Level Basic

The security level Basic is mostly used for backward compatibility. It offers only one key for the personal (project specific) encryption - the Project Secure Key (PSK). It is a symmetric method (the same key is used for encryption and decryption).

·The operations on the license file are very fast

·The encryption of the license file itself is save as the encryption methods used are high level standard algorithms

·If the Project Secure Key is stolen, a hacker can use the License Generator to create license files

Settings in the project template: <SecurityLevel>BASIC</SecurityLevel>

Security Level Advanced

If you start a new project, always use the level Advanced. If offers 3 different keys for encryption:

·Project Secure Key

·ReadKey

·WriteKey

The ReadKey is used in the Source Code and allows to decrypt the license file (see commands PrepareAndCheck, Prepare, PrepareAdvanced). The WriteKey is used in the License Generator to encrypt a license file. ReadKey and WriteKey are a key pair and belong together (asymmetric method).

The Project Secure Key is used for additional encryption of Activation Keys.

·Very safe, as stealing of the ReadKey doesn't allow to built a Generator. The Project Secure Key and the WriteKey will stay in the company, so a hacker could steal only the ReadKey.

·The encryption of the license file itself is save as the encryption methods used are high level standard algorithms

· The operations on the license file are slower like the operations using the Basic Level

Settings in the project template: <SecurityLevel>ADVANCED</SecurityLevel>

Additional Topics

See chapter Project Keys how to create the keys.

Make sure that you hide the Project Secure Key / ReadKey in the Source Code.

See also
Personal Encryption
Security considerations
Hide the PSK / ReadKey in the Source Code


TagValue
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The TagValue field is an ASCII field where you can store any type of information in a save and hidden place. It is available on

·license file level in the node <Default> and also on

·Module level in the node <Module>

It could also be used to detect if the code was patched (see Anti Hacker Strategies)

Commands to read or write the data are:

TagValue on Module level

· ValidateEx

· GetTagValue

· GetVal - Token TAG

· SetVal - Token TAG (write value)

· PrepareAndCheck

The value can be added for each module in the main license screen

TagValue on license file level (node Default)

· GetVal - Token LTG

· SetVal - Token LTG (write value)

The value can be added in the Additional Settings screen.

To store additional data in the license file, which is not module related, see chapter: Store data in the license file.


Web Service URL
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

<WebServiceURL> in the node <Default>

Link to the Activation Server 4. The default link goes to the Mirage test server. If you want to use the Activation Server 4, either replace it with the link to your own server or with the link you get if you are using the hosting serviceof Mirage.

Syntax: http://www.registerserver.net/lptest/lpweb/lpws.asmx

To use online activation, set the parameter RegisterOnline in the command SetRegisterSettings to true.

The URL is sent to the default port which is normally port 80

The settings can be changed in the License Generator, TAB Activation Server

·Change settings for own server

·Change settings for Hosting

For Hosting customers the URL is: http://www.registerserver.net/hostingnumber/lpweb/lpws.asmx


Workflow
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

By default, you would code a workflow with the command SetRegisterSettings.

It is possible, to define the desired workflow in the project template using the following TAG:

<EasyGoWorkflow>1</EasyGoWorkflow>

To use the workflow from the project template, leave WorkflowType in SetRegisterSettings empty.

Using the workflow from a project template would allow to deliver different versions of an application just by using another license file.

Values

1 = Evaluation Version

2 = No Evaluation Version

3 = Evaluation version but NO product activation

Overview about all Workflows


Project Keys / Personal Encryption
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each project has an own encryption to ensure, that keys and license files are unique.

The personalization is achieved with a Read Key (used in the application to read/open license files = decryption) and a Write Key (in the Generator to create files = encryption). For certain encryption issues a Project Secure Key is used. See chapter SecurityLevel for background information.

This ensures that:

·a hacker can never build a generator as he would need all 3 encryption keys (Read Key, Write Key, Project Secure Key)

·every product has a different encryption so that a Serial Number for product A would never work for product B

After finishing all tests, the demo keys in the project template have to be replaced with encryption keys, which are unique for the project. Use TAB File, Copy Project to get new encryption keys for an existing template or TAB File, Create Project to create a new template with new encryption keys..


Security considerations regarding encryption key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector uses standard encryption methods in combination with a personal encryption. As personal encryption the

·WriteKey and

·Project Secure Key

is used. For decryption, the ReadKey is used. See chapter Project Keys how to generate these keys. If you are using the Basic Security Level (not recommended), then only the Project Secure Key is used for encryption and decryption.

If a hacker would steal the ReadKey (which is used in the application), he would not be able to make a generator to produce license files or Activation Keys. This would require also the WriteKey and Project Secure Key. See also how to Hide the Read Key in your source code.

Security Considerations

As all keys are inside the license file template, you improve security using these steps.

After finishing the integration, generate new project to get new encryption keys. Now distribute the template as follows:

Development

Make a project template, which includes only the ReadKey. This project template can be used by development. The source code requires only the ReadKey in the PrepareAndCheck, Prepare or PrepareAdvanced statement.

Administration

The License Generator needs a project template with WriteKey and Project Secure Key. If an existing license file should be opened within the License Generator, then the ReadKey is necessary.

Depending on your needs you can make a project template which includes only:

·Project Secure Key - if an Activation Key should be generated

·WriteKey - if a license file should be generated

·ReadKey - if a license file should be opened

You could also make a Web Based interface to generate the keys using the Automatic License Generator. This allows to place the project template on a server and limit the file access.

Activation Server 4

The Activation Server 4 needs a project template with ReadKey, WriteKey and Project Secure Key.

Automatic License Generator

Depending on your needs you can make a project template which includes only:

·Project Secure Key - if an Activation Key should be generated

·WriteKey - if a license file should be generated

A ReadKey is not necessary.


Activation and License Screens with EasyGo

Navigation: »No topics above this level«

license and Registration Screens
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This chapter describes all relevant screens of the EasyGo during the licensing and activation process.

It also covers:

Start options

· Time limited evaluation version

· No evaluation version - Serial Number needed to start

· Evaluation without time limitation

· The evaluation version cannot be activated. Full version requires a new installation package

Product Activation

· Collect Activation Data

· Subscribe to Newsletter

· Online Activation

· E-mail Activation

· Fax Activation

· Activation by Phone

· Enter Unlock Key

Covering problems during program start

· Evaluation Period Expired

· Copy Protection Violation - automatic reactivation

· Network license deactivated

· No free license available

· No Internet connection

· System date was tampered

The Video Tutorial offers a live demonstration of each activation method.

Start Video Tutorial

·The activation dialogs are available in multiple languages

·The dialogs need at least a screen resolution of 800 x 480 pixel

·It is possible to create own screens and own workflows - see chapter: Custom-made user interface


Start Screen in Evaluation Mode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This is the initial screen, which pops-up as long as the software is not activated and the version is a trial version. It depends on the selected customization options.

It allows either to continue unregistered or to type in the Serial Number. The version can be used x days for evaluation before the activation has to be done.

When the trial expires, the screen changes - details

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·Application Name - Productname

·Buy it button - BuyURL

·Registration Image - ImageFile

·Show license Information - LicViewerAllowed

·Activation Options - RegisterOnline, RegisterBye-mail, e-mail_Address, RegisterByFax, Faxnumber, RegisterByPhone, Phonenumber, e-mail_Fax_Text

·Default Activation Option - DefaultMethod

· Workflow must be = 1

· Link to Help

· Define language

·Use SetCustomerText to change the wording on default screens

License Generator Settings

The following configuration settings are configured in the project template or License Generator.

· Number of days to evaluate

Check the chapter workflow for all possible settings!


Start Screen - No Evaluation Mode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The product has no evaluation mode. The user has to type in the Serial Number and activate the product before it can be used.

Without a Serial Number the user cannot continue. He has to type in theUnlock Key before the application can be used. Without the Serial Number or Unlock Key, only the End button can be used.

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·Application Name - Productname

·Buy it button - BuyURL

·Registration Image - ImageFile

·Show license Information - LicViewerAllowed

·Activation Options - RegisterOnline, RegisterBye-mail, e-mail_Address, RegisterByFax, Faxnumber, RegisterByPhone, Phonenumber, e-mail_Fax_Text

·Default Activation Option - DefaultMethod

· Workflow must be = 2

· Link to Help

· Define language

·Use SetCustomerText to change the wording on default screens

Check the chapter workflow for all possible settings!


Start Screen - No product activation possible
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The product is only available as an evaluation version. It cannot be activated - the user needs a new installation package for the full version.

If the trial period expires, the following screen is displayed.

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·Application Name - Productname

·Buy it button - BuyURL

·Registration Image - ImageFile

·Show license Information - LicViewerAllowed

·Activation Options - RegisterOnline, RegisterBye-mail, e-mail_Address, RegisterByFax, Faxnumber, RegisterByPhone, Phonenumber, e-mail_Fax_Text

·Default Activation Option - DefaultMethod

·Contact address - ContactAddress

· Workflow must be = 3

· Link to Help

· Define language

·Use SetCustomerText to change the wording on default screens

Check the chapter workflow for all possible settings!


Start Screen - Evaluation without time limitation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This option allows using the evaluation version for an unlimited time but brings up an registration screen during each program start.

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·Application Name - Productname

·Buy it button - BuyURL

·Registration Image - ImageFile

·Show license Information - LicViewerAllowed

·Activation Options - RegisterOnline, RegisterBye-mail, e-mail_Address, RegisterByFax, Faxnumber, RegisterByPhone, Phonenumber, e-mail_Fax_Text

·Default Activation Option - DefaultMethod

· Workflow must be = 1

· Link to Help

· Define language

·Use SetCustomerText to change the wording on default screens

Check the chapter workflow - endless evaluation for all possible settings!


Select Activation Method
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Depending of the activation method defined with SetRegisterSettings , the user can select between one or more activation methods:

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·Activation methods - RegisterOnline, RegisterBye-mail, e-mail_Address, RegisterByFax, Faxnumber, RegisterByPhone, Phonenumber, e-mail_Fax_Text


Collect Activation Data
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

It can be configured, how many data should be collected through the activation process:

Standard Activation Data

This screen collects Serial Number, Name/Company name and e-mail address

Basic Activation Data

This screen collects Serial Number, Customer Number, Company name, Salutation, First and Last Name, Country (using a picklist which includes all countries of the world) and e-mail address.

Full Activation Data

This screen collects the same data like the basic activation data + detail address data and additional data like website and remarks.

·Required fields are marked with a red line

·For activation by phone only the Standard data is collected

The configuration is done with SetRegisterSettings, option ActivationData.


Subscribe to Newsletter
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

After the user has typed in the activation data, a screen to subscribe to up to 4 newsletters appear.

Source Code Settings

The following configuration settings are configured with the command

· SetNewsletter- configure 1 to 4 newsletter in different languages


Online Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The Online Activation needs the Serial Number, company name and e-mail address. Press the button Next. Then the license will be verified online and activated. No additional step will be required. If the Activation is successful, the screen Activation finished is displayed. See details of the workflow

Screen - Online Activation

Enter activation data

The user first gets a screen to type in the Serial Number, name and depending on the settings for the required activation data, more personal data.

Click to enlarge

Standard Activation Data
Click to enlarge

Basic Activation Data
Click to enlarge

Full Activation Data

Click to enlarge

Newsletter

Change Proxy server settings

By default, the proxy server settings from the Internet Explorer are retrieved. The user can change the settings.

Click to minimise

Online Activation - Change Proxy Server

You can disable the option to allow changing the proxy settings using <AllowChangeWASURL> in the project template. The default value is to use NO proxy server.

Online Activation in process

The user sees an animation while the data are sent to the Activation Server 4.

Activation in progress

Activation in progress

The dialogs could be deactivated either with the settings <ShowWAStartPage>, <ShowWAProgressPage>, <ShowWAResultpage> in the project template or with the commands ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage in the source code.

Activation successful

The screen activation completed is displayed.

Click to minimise

Online Activation - completec

Source Code Settings

This activation option is defined with the parameter RegisterOnline. The WebServiceURL has to be defined in the project template.

Ports and Proxy Settings

The Online Activation uses an http request on Port 80 to communicate with the Activation Server. A router with a standard firewall (IP-Filter) will not detect the difference to a Browser request and let the activation pass. A local personal firewall like McAfee or Norton will pop-up and ask, if the request should be permitted. Only a 'real' application firewall will block the request and an administrator has to open port 80.

Proxy settings are retrieved from the Browser but can be changed with the commands LocalProxPort, LocalProxyServer, UseLocalIIEProxy, UseLocalProxy.

Only the Licence Protector DLL can talk to the Activation Server.


Activation by e-mail
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The e-mail Activation needs the Serial Number, company name and your e-mail address. See details of the workflow.

Screen - Activation by E-Mail

Enter activation data

The user first gets a screen to type in the Serial Number, name and depending on the settings for the required activation data, more personal data.

Click to enlarge

Standard Activation Data
Click to enlarge

Basic Activation Data
Click to enlarge

Full Activation Data

Click to enlarge

Newsletter

Request Unlock Key

After clicking on the button Next, the default e-mail Client opens. This will open your default e-mail client. An e-mail with the hardware IDs and license information will be created. Press send to send the e-mail to our activation center. You will get an Unlock Key back within 2-3 business days.

The e-mail also contains the data in an encrypted form. This will allow an automatic response and activation in a future version of Licence Protector,

Click to enlarge

E-Mail Activation - send E-Mail

Activation in process

After pressing the Next button, the screen: activation in process appears. In case the default e-mail client does not open, because a web e-mail or Lotus Notes is used, the user gets the information, that he can copy and paste the e-mail content in his e-mail system.

Click to enlarge

E-Mail - activation in process

Create Unlock Key

There are multiple options to create an Unlock Key - Overview

Enter Unlock Key

After requesting the Unlock Key by e-mail, the screen shown below will appear during each start of the program. Type in the Unlock Key you got back by e-mail or fax. Press the button Next. If the Activation is successful, the screenActivation finished is displayed.

Click to enlarge

Enter Unlock Key

Source Code Settings

This activation option is defined with the parameters RegisterBye-mail and e-mail_Address, e-mail_Fax_Text

See also option: UseMapi


Activation by Fax
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The Fax Activation needs the Serial Number, company name and your e-mail address. See details of the workflow.

Screens - Activation by Fax

Enter activation data

The user first gets a screen to type in the Serial Number, name and depending on the settings for the required activation data, more personal data.

Click to enlarge

Standard Activation Data
Click to enlarge

Basic Activation Data
Click to enlarge

Full Activation Data

Click to enlarge

Newsletter

Request Unlock Key

After clicking on the button Next a PDF file (requires a PDF reader to view) opens with the hardware IDs and license information. Press print to print the report and then fax it to the number provided in the report. You will get an Unlock Key back within 2-3 business days.

The fax also contains the data in an encrypted form. This will allow an automatic response and activation in a future version of Licence Protector.

Click to enlarge

Fax Activation - Print Fax

Activation in process

After pressing the Next button, the screen: activation in process appears. In case the default e-mail client does not open, because a web e-mail or Lotus Notes is used, the user gets the information, that he can copy and paste the e-mail content in his e-mail system.

Click to enlarge

Fax - in process

Create Unlock Key

There are multiple options to create an Unlock Key - Overview

Enter Unlock Key

After requesting the Unlock Key by fax, the screen shown below will appear during each start of the program. Type in the Unlock Key you got back by e-mail or fax. Press the button Next. If the Activation is successful, the screenActivation finished is displayed.

Click to minimise

Enter Unlock Key

Source Code Settings

This activation option is defined with the parameters RegisterByFax and Faxnumber, e-mail_Fax_Text


Activation by Phone
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

First of all, the activation by phone needs the Serial Number and company name. Then press the button Next. See details of the workflow.

Screens - Activation by Phone

Enter standard activation data

The user first gets a screen to type in the Serial Number, name and e-mail address. Additional activation data is not available during the activation by phone.

Click to enlarge

Phone Activation - Step 1

Request Unlock Key

Now call the phone number which is displayed. You will then be asked for the Serial Number and one or more Installation codes. Press the Next button

Click to enlarge

Phone Activation - Step 2

Create Unlock Key

There are multiple options to create an Unlock Key - Overview

Enter Unlock Key

Click to enlarge

Enter Unlock Key

Type in the Unlock Key you get and press the button Apply Key. If you got multiple keys you can enter it now.

Source Code Settings

This activation option is defined with the parameters RegisterByPhone and Phonenumber


Enter Unlock Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After requesting an unlock key via e-mail, fax or phone this screen appears with the next program start.

Typing in the unlock key activates the software copy protection. The user can type in only the Unlock Key or in case he got multiple keys with the order, he can type in all keys now.

The registration process is then completed. The screen: Activation Successful is displayed.


Activation completed
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Either after the Online Activation screen or after entering the Unlock Key (see e-mail, fax or phone), the final screen appears to signal that the activation was successful.

This screen allows to type in additional keys. This is a very useful feature as the user can not only type in the Serial Number but also additional Activation Keys for modules during the product activation process.

The screen can be changed or completely suppressed using the command SetEasyGoProperty.


Evaluation version - expired
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the Serial Number is not entered until the end of the evaluation period, a special message screen with a link AND a button to buy is displayed. It is not possible to continue without activating the product.

Evaluation Screen expired and no Serial Number Key was applied

This screen appears if the trial period expires and no Serial Number Key has been applied.

Click to enlarge

Evaluation expired - no Unlock Key used

Evaluation Screen expired after an Unlock Key was requested by e-mail or Fax

This screen appears if the trial period expires and an unlock key was requested by e-mail or Fax

First the screen to enter the Unlock Key appears.

Click to enlarge

Evaluation expired - enter Unlock Key

If the Unlock Key is not applied, then the next screen appears to indicate, that the version has expired.

Click to enlarge

Evaluation expired - Unlock Key is missing

·The error code is 16 or 17


Full version - expired
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the workflow is set to a time limited full version - see workflow options , the following screen appears after the expiry date is reached.

You can send out a new Serial Number to set a new expiry date


Event based message
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Event based messages, specified with the command SetRegisterExpiryWarning.


License Viewer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The License Viewer is the built in administration tool, which can be accessed from any screen during the activation and registration process with the link Show license Information.

How to invoke the Viewer within your application and more details see License Viewer.


License Transfer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license transfer includes several screens

PC A - select license transfer

If the PC A selects the transfer license option, the following screen is displayed

License Transfer - Start

License Transfer - Start
Change Proxy Settings

Change Proxy Settings
License is deactivated

License is deactivated

The license is now deactivated on PC A. The License Viewer displays a new icon [image] to indicate, that the license is locked on this machine

License Viewer - license is locked

License Viewer - license is locked

PC A - starts the application again

If the PC A starts the application again a message is displayed that either:

·The user deactivates the license on PC B

·The user buys a new Serial Number

·The user tries to reactivate the license. In case the Serial Number was not used on another PC the license will be reassigned to PC A

License is locked - Reactivate

License is locked - Reactivate

In case the Serial Number was already used on another PC the user gets an error message.

License locked and reactivation not possible

License locked and reactivation not possible

PC B - starts the application

If PC A transferred the license then PC B can used the same Serial Number and activate the product. PC B could also transfer the license back to PC A.


Covering problems - Error Messages
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

During program start, typical problems and error situations are tracked. Most common errors are:

· Copy Protection Violation / Reactivation

· Evaluation Period Expired

· License / Module is deactivated / Reactivation

· Online Activation - wrong date/time

· Network license deactivated

· No free license available

· No Internet connection

· System date was tampered

· Wrong license file


Activation failed - Serial Number already in use
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If a Serial Number is used, which was already used on another PC for a successful product activation, this the following error message appears.

License locked and reactivation not possible

License locked and reactivation not possible

The Next button allows to use a new Serial Number and displays the screen to select the activation method.

If the END button is used and the application is restarted, the screen to enter an Unlock Key appears, where the user also can select to reactivate the application with a new Serial Number.


Copy Protection Violation / Reactivation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If the license file is copied to another PC or the hardware of the PC changed, then a copy protection error occurs It is not possible to continue.

It is possible to try a reactivation. This covers the situation when a user has changed hardware settings. The next step is to Select the activation method and then try to reactivate. See details - Reactivation after copy protection violation. Ensure that the configuration on the Activation Server 4 is set to allow reactivation.

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·ContactAddress - display e-mail or phone number in the error screen.

Error code: 1024


License deactivated / reactivate license
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If a license or module was deactivated, because it was transferred to another PC, this is indicated on the module level with the icon [image] . If the main module was deactivated, then the complete license is deactivated and a program start results in an error.

The same situation would occur if a license was locked on the Activation Server 4 - see lock or revoke a license

Click to enlarge

License Viewer - license is locked

Program start - license is locked

If a user starts the application again after the license was already transferred or locked on the Activation Server 4, an error screen appears.

·The user can now try to reactivate the license (button Activate again). This requires an online connection. If it is not in use by another PC or the license lock was removed on the server, the license is reactivated.

·The user can also type in a new Serial Number

If the reactivation is not successful, the following error message appears:


Online Activation - wrong date / time
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the local date / time differs from the time of the Activation Server 4 the following error screen appears. This is necessary to ensure that the date/time on the local PC is not manipulated.

Click here to find out how to change the default configuration setting.

Error code: 3014


Network license - deactivated
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If a PC or user was deactivated (see Licence Viewer - deactivate a network license) the application does not start. The error message helps the user to reactivate his license. This is only possible if a free network license is available.

Error code: 64


No free license available
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the application is used with a network license, and the users / PCs would be over the defined limit then this error message appears.

A user / PC license can be deactivated from the end user within the License Viewer.

If this feature is disabled (<AllowDeactivate> set to false in the project template), a concurrent user license is used or the License Viewer option is disabled (SetRegisterSettings, LicViewerAllowed = false) , only the option to buy the license is displayed.

Error Code: 32 - see common reasons for this error.


No Internet Connection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case that no Internet connection could be established, the following error message appears. The next program start will display the screen to select the activation mode, so that e.g. the user can switch to e-mail activation.


System date was tampered
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the system date was turned back more then one day AND the check for system date modification (CheckSysdateChanged) was activated , then this message appears.

To unlock the system date lock, you can use any Activation Key - e.g. a key which sets Demoversion to true or a key without any settings.


Wrong license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If a non existing license file is used with one of the Prepare commands, the following screen pops-up.


License Viewer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The License Viewer is part of the DLL and is a complete administration interface for the end user. It is much more than just an option to display license information. To use the License Viewer, the license file needs to be opened first with one of the Prepare commands. See - open a license file.

Features

· Basic license information like manufacturer, company, copy protection status and system information

·License information per module (number of licenses, time limitation, demo version, activation status)

·List of users, PCs and concurrent users for each module. Allows to remove / deactivate a user / PC / item

·Information about stored data

·Option to apply Activation Keys (button Activation Keys)

·Option to activate log file (button Options)

·Option to transfer a license

To invoke the License Viewer see ShowLicViewer or for EasyGo see SetRegisterSettings (LicViewerAllowed). After the registration process, the EasyGo screens appear only in error mode. The language information from SetLanguageis used.

We strongly recommend implementing the License Viewer. You could e.g. make a new menu item, Help - Show License Information. If you want to offer a custom-made viewer, see chapter - Create own License Viewer

See also

Basic license information
Module Information
Deactivate a network license
Transfer License button
Enable / Disable buttons


Basic license information
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Basic license information is structured in 3 sections.

Click to enlarge

Basic license information - Copy Protection turned off

Manufacturer and License Holder

·Manufacturer. The company name, defined in the project template with <manufacturers>

·Company: Before applying the Serial Number, this is the Default Customer Name (e.g. Evaluation Version). After applying the Serial Number key, the customer name, entered during the activation (Online, e-mail, Fax, Phone) is displayed. This is the license holder

Installation Codes

All available installation codes (hardware IDs) are displayed. If copy protection is not activated, then the folder has this icon . After activation of the copy protection, the icon switches to and the criteria, which is used for copy protection, is marked with .

Click to enlarge

Basic license information - Copy Protection turned on

If a customer has a problem with copy protection, just use another installation code and create a new Unlock Key, which can be applied in the License Viewer instead of the EasyGo screen.

System information

This information is helpful for support and depends on selected options.

·License File path and name

·License File - ID: Using EasyGo, it is always the same ID as it is a generic license file. If you make bespoke license files, then the ID is unique - see License File ID

·License File Version: Information, which version of the License Generator did create the file. It changes only if the file format changes

·License File Date: Date and time when the license file was created

·Security level define in the license file template - see <SecurityLevel>

·Concurrent user option (Heartbeat, Light). Details see chapter: Concurrent user testing

·Last online backup of license file.


Module Information
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each module is listed with additional information (depending on the module type).

·Demo version

·Expiry date or time limitation

·Activation Status (required, erroneous, done)

·Number of licenses (module type license per user, PC, concurrent or item counter)

·Available Yes [image] / NO [image] (module type Yes / NO)

·All keys, which have been used for a module

·All users [image], Concurrent users [image], PCs [image] or items [image] per module. If a license is deactivated, this is indicated with the icon


Lock a network license

Navigation: License Viewer:

Deactivate a network license
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If an application uses a license per PC , per User or Item then a single license can be deactivated within the License Viewer. This is not necessary for concurrent user because the license is automatically removed when the application terminates.

To activate this feature you have to set <AllowDeactivate> to yes in the project template.

Lock a license within License Viewer

A license (per PC / User / Item) can be locked by

·selecting the license

·press button Lock

The deactivated license is now displayed in brackets and the icon changes to [image]. The license can be used again by another PC / User / Item

Release a locked license

A license which was locked, is displaced in brackets. It can be activated again by

·selecting the license

·press button Release

·Deactivation of a concurrent user is only necessary, if the user is not automatically removed. It is not a deactivation of the license - it is a removing of the user. The user will get the license again with the next program start again. See also: Concurrent user testing.

·The deactivation is done when you press the OK button. If the user has already started the application, the next PrepareAndCheck or Validate will return an error. See error message screen.

It is possible to deactivate a network license using DLL commands - see commands GetEntriesOfModule, DeactivateEntry, RemoveDeactivated and RemoveAllItems

Transfer a license

If the server is replaced, a license transfer is necessary.


Transfer License button
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to implement transferring a license from PC A to PC B, you have to make the button Transfer License visible.

For a complete workflow how to transfer a license see chapter: Transfer a license from PC A to PC B. It requires SetRegisterLicTransfer to define additional settings if a complete license file should be moved

·Retrieve main module ID with MainModuleID

·Retrieve Serial Number / ID with GetSerial. If the Serial Number / ID is empty then the license transfer is not possible and the button is disabled (only a license, which was activated, can be transferred)

·Define the values for the license transfer with SetVerificationIDOfModule

·To enable the button use SetLicViewerButton, button number 6.

After the license is transferred, the button Transfer License is disabled and there is a new icon [image] to indicate, that the license is locked on this machine.

You can also transfer a license using TransferLicense.


Button Options - Log File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case of an error, a log file can be activated. ZIP all files with the extension .log and open a support ticket.

Using the button Options you can:

·enable the log file

·select a path for the log file

For each program start another log file is created. Disable the log file option when it is not required.


Enable / Disable buttons
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can enable or disable the buttons within the License Viewer. By default, the following buttons are enabled:

·Lock / Release

·Activation Key

·Refresh

·Info

·Options

·Close

The command to enable / disable the buttons is SetLicViewerButton.

Lock / Release

Allows to lock / release a network license - See chapter: Lock a network license

Activation Key

Allows to apply an Activation Key. You should always make this button visible.

Refresh

Reloads the license information. This is handy in a network environment to update user information.

Info

Displays copyright information about Licence Protection

Options

Allows to enable a log file. We strongly recommend not to disable this button. The log file is the only way to trace an error.

Transfer License

Allows to transfer a license - see chapter: Transfer License button


Using License Tester
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The license Tester is not an application - it is a tool to make 'live' tests. ALL API calls are placed on a button and the button is exactly labled as the corresping API call. Each parameter of an API call can be typed in using the fields provided by the license Tester.

If you press the button, the DLL call is processed exactly as it would be processed in the source code. The return values are displayed in a separate window.

If you use the demo-EasyGo.xml file then also the Online Activation can be tested.

Select the EasyGo TAB on the right side and specify your preferred registration methods and options. Then press: SetRegisterSettings

Click on the image to expand

SetRegisterSettings

The next step is to set the desired language for the user interface. Select the TAB Additional, and set the language with SetLanguage. Language Code 0 = use language of the operating system.

Click on the image to expand

SetLanguage

Invoke EasyGo

Check the security level Advanced and the command PrepareAndCheck, select the license file (demo-easy.lic) by

clicking on the button ...

,type in your personal Read Key (Demo Read Key is inserted automatically) and type in the module number (QHD001 in the demo project) in the field ModuleID. If you have a user module also check UseWindowsUser. Then press Prepare. The initial screen with EasyGo will appear.

Click on the image to expand

PrepareAndCheck

To use the COM exe (64bit) for testing, select EXE right to the Licence Protector version number.

Save configuration settings

Press the button Save to save all your settings. Press the button Load to load the settings again.

If you have multiple configurations, you can specify a name in the Content picklist - e.g. configuration e-learning or configuration CTI. To load such a configuration, select it and press the button Load


Create Keys with EasyGo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with 3 different key generators (depending on the Licence Protector editions).

License Generator

This is a standalone Windows application and can be used to create a single license file or key. It is perfect for developers, as you can specify and configure a lot of settings.

Use the License Generator

Browser based administration interface

The browser based administration interface comes with the Activation Server 4. If you use the Activation Server 4, the recommended way to create a key is the browser based administration interface of the Activation Server 4. This offers several advantages

·Multiple users can create keys from different locations

·It is simple - just click on the create button. Most of the settings are predefined

·You can store a key with a note or assign a reseller while you create the key

·You can create one key or a complete key list

Only create keys but not files can be created with the Web Administration Interface

Create keys using the Web Administration Interface

Automatic License Generator

This is a batch application, which allows to create a license file or a key in a batch process. It is mainly used for:

·Create a key list, e.g. 1000 keys for a CD production

·Integration in e-commerce systems so that after the order process automatically a key or file is generated

·Integration in a sales system that would allow administration to create keys using the software application they already are familiar with

Create keys and files using the Automatic License Generator

Key format and key creation

You need different keys for different tasks.

· Format of a Key

·Other Activation Keys

· Serial Number Key

· Unlock Key

· Other Activation Keys

For detail information about Activation Keys see chapter Activation Key - Intro.


Format of a Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

All keys used by Licence Protector are unique and have the same format.

dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX

There are 6 blocks each with 5 characters. The blocks are separated by a hyphen for better readability.

The option: Use extended description adds additional information information to clarify letters which could be misinterpreted (like I and 1 or O and 0). This is only necessary when transmitting a key by fax.

Example:

dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX

In block 1 at position 2 there is the capital letter O

In block 3 at position 2 there is the capital letter O

In block 5 at position 4 there is the small letter l

In block 6 at position 1 there is the digit 0

All keys are project specific. You have to load the project before you create the keys. It is not possible to create a Serial Number for project A when project B is loaded.


How can I use an Activation Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are different options to use / apply an Activation Key

· License Viewer

·Commands ApplyActivationKey, ApplyActivationKeyForProject, ApplyInvisibleKey

·A Serial Number and Unlock Key can be either used within the product activation dialogues (using PrepareAndCheck) or also in the License Viewer


Serial Number Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After buying the product, a Serial Number is sent to the customer. It is the 'proof of purchase' and it is unique. To get a better idea of the workflow see Basics about Workflow.

The design of a key is described in Format of a Key.

The key used as a Serial Number just sets the status of the Activation to required. You could modify additional settings with the same key:

·Days: add number of days which the version can be used after the Serial Number key is applied. The days are added to the days left from the trial version.

·Expiry date: Sets an expiry date after the Serial Number key is used. Normally you would not use this option because a fix date has to be specified

If you allow e-mail, Fax or Phone activation then 3 to 5 days should be added to cover the time between sending the registration info and sending back the unlock key.

Depending how you handle the order process, there are a lot of different ways to create a Serial Number Key

See also

Create Serial Number using the License Generator
Create Serial Number using the administration interface of the Activation Server 4
Create a key list with Serial Numbers
Create a Serial Number automatically after the Order Process
Create a Serial Number using own user interface
Other Activation Keys


Create Serial Number using License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Serial Number can be generated for each order manually with the License Generator. This is the best option if only a few orders have to be handled and no Activation Server 4 is used.

Start the License Generator and load the demo-EasyGo.xml or your project template.

In the TAB Keys select Serial Number

Select Module

Select the module, for which you want to create a Serial Number. By default, all modules will appear. A good idea is to define in the project template, which module is used as the main module. Then only this module will appear in the pick list. See Define module for Serial Number

Number of days until Unlock Key has to be used

If activation by e-mail, fax or phone is used, there is a time difference between applying the Serial Number key and sending the Unlock Key. To allow the customer to use your application after applying the Serial Number, add a few days (typically 2-5 days) which are included in the Serial Number. The value 0 means that the user cannot start the application before he types in the Unlock Key.

Instead of using number of days, you can also use an Expiry Date

If you deliver a time limited full version - see workflow options - then the text changes to: Number of days until full version expires

Example screenshot : After typing in the Serial Number the full version would expire in 365 days.

If you check: Expiry Date, then the full version would expire at this date. This is useful, if all customer versions should expire at a certain date.

If the user has an evaluation version installed and the evaluation version has not expired yet (e.g. expiry date is in 12 days), the Serial Number would overwrite this value with the value specified in the Serial Number.

Number of...

If a network license is used (more then 1 license per PC / user / concurrent user), the number of PCs / users / concurrent users can be coded in the Serial Number. If the user buys later more licenses, send him and Additional Key.

This value overwrites the existing value in the license file. If you have an evaluation version with 5 users and the Serial Number includes 1 user, this results in a license for one user after applying the Serial Number.

For a single user installation always set this value to 1.

You can change the value for a Yes/No module or also set a value for a counter module.

Number of desired Serial Numbers

Either generate one key per customer or generate a complete key list with hundreds of keys. For details see Create a Key List.

Create and Save Key

After pressing the button Create Serial Number, the key(s) including the extended description is/are copied into the text box. If only one key is generated, it is also copied into the clipboard.

The content of the text box can be saved to a file with the button Save generated keys to file.

If you send out a key by mail, turn on the option: Description. This will create additional text for each key to ensure, that the user types in the correct letter.

RCGEH-5EPc3-9E7IL-3tI8X-WQU5k-6v141

In block 3 at position 4 there is the capital letter I

In block 4 at position 3 there is the capital letter I

See also: How often an a key / ID be used?

If you need more configuration options for a Serial Number, see Create Serial Number using Activation Keys

See also

Create Serial Number using Activation Keys
Other Activation Keys


Create Serial Number - using Activation Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A Serial Number can also be created using the screen to create an Activation Key in expert mode. It requires specific settings. Use this option only if you want to create Serial Number Keys with additional options. Otherwise use the screen - Create Serial Number

Start the License Generator and load the demo-EasyGo.xml or your project template. Double-Click on the dots in the column Activation Key.

Click on the image to expand

Set Copy Protection = None

The value Copy Protection must be set to None (default) as you do not know the hardware information when you generate a Serial Number.

Select your main module and click on the three dots in the column Activation Key. You get the screen to generate an Activation Key.

Press the button New and select the follow settings. Then press: Generate. The key is copied into the clipboard.

Important settings are

·Serial Number must be checked

·Activation has to be set to Required

·Online validation required must be unchecked

·License File ID has to be 0

·If you want to allow a reinstallation on the same machine, check Unlimited Installation

·Number of Days can be set to allow additional days until the registration is completed

·If you sell a network license or use a counter then you can code the number of licenses in the Serial Number. You should check the absolute option to ensure, that the value is not added and replaces the value used in the evaluation version

Multiple Usage of Serial Numbers

By default, a key can be used only once but you can allow a reinstallation on the same PC (option Unlimited Installation). This is automatically checked by the Activation Server.

Note

Even if you get an activation request by e-mail, Phone or Fax the Activation Server 4 must be used to create the Unlock Key.

If you have no Activation Server 4 you have to ensure manually that the Serial Number is not used twice.

Never select Online Validation required for a Serial Number Key. The online validation is automatically done if the user selects Online Activation during the activation process.

If a user types in a Serial Number and selects a manual product activation, he could start the application if there are still days left from the trial version. If the user should be able to start the application only after typing in the Unlock Key, set a date to 01/01/1900 as expiry date when you create the Serial Number. After typing in the Serial Number, the product would expire and the user can continue only when typing in the Unlock Key.

See also

Create a Serial Number using the License Generator
Other Activation Keys


Create Serial Number on the Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you use the Activation Server 4, the recommended way to create a Serial Number is the browser based administration interface of the Activation Server 4. This offers several advantages

·Multiple users can create keys from different locations

·You can assign a key to a customer or a reseller

·A note can be attached to a key

·The maximum key usage can be changed

·The key is already stored and it can be changed or locked

·You can create one single key or a key list

Log into the Web Administration Interface and select Keys, Create a Serial Number.

For more details change to Activation Server 4 help


Create a key list with Serial Numbers
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have only a few installations to manage, it is sufficient to generate the Serial Number on a one-by-one basis manually. In case of a large volume delivery like hundreds of CD's, a key list is necessary. The key list file would then be sent to the CD duplication company. Online Shops that do not support an integrated generator often support the upload of a key list.

The key list file can be generated within the screen - Keys, Serial Number. Enter the desired number of serials, press button Create Serial Number and then the button Save generated keys to file. The key list is saved as a text file.

Example

gPGEO-5EPc3-9E7Ih-3tI8X-sQU5k-6k14Z

mbGEp-5EPc3-9E7Ip-3tI8X-BQU5k-6y146

b2GEq-5EPc3-9E7Iv-3tI8X-dQU5k-6o14A

QPGEe-5EPc3-9E7IF-3tI8X-7QU5k-6214x

xSGE3-5EPc3-9E7IG-3tI8X-9QU5k-6p141

mnGEp-5EPc3-9E7Ih-3tI8X-XQU5k-69145

XtGEX-5EPc3-9E7I6-3tI8X-mQU5k-6N14V

0JGEp-5EPc3-9E7IG-3tI8X-7QU5k-6114c

EbGED-5EPc3-9E7IB-3tI8X-mQU5k-6V14f

c4GEp-5EPc3-9E7IJ-3tI8X-SQU5k-6h14f

A key list can also be created in a batch process - see Create a key list with the Automatic License Generator

The keylist can be used in Online Shops.


Create a Key List with the Automatic License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A key list with hundreds of Serial Numbers can be generated in a batch process with the Automatic License Generator.

This is required if the application is sold via stores or with a box. It also simplifies the administration because per order just a key from the list can be used.

In the folder ..\EasyGo\key list you find sample configuration files. Basically, you have to define exactly the same settings like you would use with the manual generation of a Serial Number.

Myorderkey list.xml

Change NoOfkeys (=number of keys you want to generate) and use your module number as ProductID.

Config-key list-EasyGo.xml

This file includes the definition, with which options the Serial Number should be created. Use the same values like you would use within the License Generator and manual generation. You have to change in the sample file:

·ProductID to your product ID used in the shop

·ProjectFilename

·ModuleNumber

·WebActivation must be set to required, ForceOnlineCheck must be set to no

·MakeSerial must be set to yes to create a Serial Number key

· LocalReuse allows a reinstallation

·CreateMultipleKeys = yes creates for the selected quantity in the shopping card multiple single Serial Numbers - e.g. quantity = 10 would result in 10 Serial Numbers

·Days should be set Number of days until Unlock Key has to be used and AbsoluteDays=yes to delete remaining days from a trial version

Start the process-key list.bat to create the key list.

Configuration file for a network license

Myorderkey list.xml

Change

·NoOfKeys to the number of Serial Numbers you want to generate, e.g. 100 would generate a keylist with 100 Serial Numbers

·Quantity - For a Yes/No module it must be 1. For a network license it is the number of network licenses, e.g. 5 = 5 user or 5 PC network license

The sample above creates 100 keys with a 2 user/PC network license.

To make a Serial Number for a network license or counter set value to the number of network licenses you want to allow and AbsoluteLics to Yes. This replaces the existing value in the license file and does not add the licenses. Find a sample in the file config-key list-easygo-network.xml.

·CreateMultipleKeys = no - creates for the selected quantity in the shopping card one single Serial Numbers - e.g. quantity = 10 would result in one Serial Number where number of licenses = 10

Never define ForceOnlineCheck=Yes for a Serial Number Key. The online validation is automatically done if the user selects Online Activation during the activation process.

A key list can also be created using the License Generator - see create a key list with Serial Numbers

Analyze a key

After making a test, you can analyze a key if it has the correct settings - see: Analyze Activation Key


Create a Serial Number automatically

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are 2 ways to create a Serial Number by an external application

· Use Activation Server API

· Use Automatic License Generator

See also
Integration in Online Shops / E-Commerce systems


Use Activation Server API
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This is the recommended way for external applications to create a Serial Number

Create keys using a https connection to the Activation Server 4


Use Automatic License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You need the Automatic License Generator for this type of integration

This is the best choice to automate the order process

In the folder ..\EasyGo\shop-integration you find sample configuration files. Basically, you have to define exactly the same settings like you would use with the manual generation of a Serial Number.

The samples are ready to go samples for the shops of www.cleverbridge.com, www.shareit.com and www.element5.com but can be used also for a generic shop integration.

Config-Autogenerator.xml

This file includes the definition, with which options the Serial Number should be created. Use the same values like you would use within the License Generator and manual generation. You have to change in the sample file:

·ProductID to your product ID used in the shop

·ProjectFilename

·ModuleNumber

·WebActivation must be set to required, ForceOnlineCheck must be set to no

·MakeSerial must be set to yes to create a Serial Number key

· LocalReuse allows a reinstallation

·CreateMultipleKeys = yes creates for the selected quantity in the shopping card multiple single Serial Numbers - e.g. quantity = 10 would result in 10 Serial Numbers

·Days should be set Number of days until Unlock Key has to be used and AbsoluteDays=yes to delete remaining days from a trial version

The name config-autogenerator.xml may not be changed. It can contain any number of product definitions.

To create a Serial Number, the project template must have the definition <IsSerial>

Configuration file for a network license

To make a Serial Number for a network license or counter set value to the number of network licenses you want to allow and AbsoluteLics to Yes. This replaces the existing value in the license file and does not add the licenses. Which files you have to send to your e-commerce provider see chapter Integration in Online Shops.

·CreateMultipleKeys = no - creates for the selected quantity in the shopping card one single Serial Numbers - e.g. quantity = 10 would result in one Serial Number where number of licenses = 10

Never define ForceOnlineCheck=Yes for a Serial Number Key. The online validation is automatically done if the user selects Online Activation during the activation process.

Analyze a key

After making a test, you can analyze a key if it has the correct settings - see: Analyze Activation Key


Create Serial Number using own user interface
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to provide an own user interface (e.g. a browser based interface or CRM system) to create a Serial Number, you can create the Serial Number in a batch mode process. This requires the Automatic License Generator.

The workflow would be as follows:

·Your application writes the number of licenses (e.g. 5 user network license) and number of keys in an xml file (customerdata.xml)

·The Automatic License Generator is invoked

·The result (Serial Number Key) is provided in a text file (serialnumber-key.txt)

To create the Serial Number, you need 3 configuration files:

·the project template

·a configuration file for the Automatic License Generator

·a file with the customer data

All files are XML files.

Download sample configuration

Download the sample files and unzip all files into the folder of the Automatic License Generator (default is ..\Licence Protector\4.1\Automatic Generator).

Configuration File

The configuration file contains all the instructions for the Automatic License Generator. The name in the sample is config-autogenerator-serialnumber.xml and config-autogenerator-serialnumber-network.xml for a network license.

Change

·ProjectFilename = your project filename

·ModuleNumber = module number of the main module.

All other settings need not be changed.

If your main module is a network license, use the file config-autogenerator-serialnumber-network.xml.

File with customer data

Your application has to create this file. The name in the sample is customerdata.xml.

The product ID must match the product ID in the configuration file config-autogenerator-serialnumber.xml. Use 1.

Change

·NoOfKeys to the number of Serial Numbers you want to generate, e.g. 100 would generate a keylist with 100 Serial Numbers

·Quantity - For a Yes/No module it must be 1. For a network license it is the number of network licenses, e.g. 5 = 5 user or 5 PC network license

By default the key is written with additional text to explain some characters. If you do not need this text set KeyOutputStyle = 0.

Invoke Automatic License Generator

Your application can invoke the Automatic License Generator using parameters for the filenames. The sample includes a batch file with the name create-serialnumber-key.bat to start the batch process.

Command Line

autolicgenerator410.exe -o customerdata.xml -c config-autogenerator-serialnumber.xml -xk serialnumber-key.txt

where

·autolicgenerator410.exe is the latest Automatic License Generator

·-o customerdata.xml specifies the file with the customer data

·-c config-autogenerator-serialnumber.xml specifies the configuration file

·-xk serialnumber-key.txt specifies the result file with the Serial Number (if the result file should be in xml format then just add the parameter -XML)

The Serial Number is written into the text file serialnumber-key.txt and your application has to read this file.

A full documentation of all configuration options and additional settings is provided in the chapter Automatic License Generator.

Analyze a key

After making a test, you can analyze a key if it has the correct settings - see: Analyze Activation Key

See also

Create Unlock Key using own user interface
Create a Key List with Serial Numbers


Unlock Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Generating an Unlock Key is only necessary if the customer registers via e-mail, fax or phone. The 8 digit installation code (hardware ID) is transferred and you have to send back the Unlock Key (copy protection key). It unlocks the version by activating the copy protection. To get a better idea of the workflow see Basics about Workflow.

The Unlock Key is either generated

· Using the License Generator

or if the Activation Server 4 is used

· Using the Web Administration Interface

If copy protection is not necessary select Unlocking without Copy Protection instead.

You either get an e-mail, fax or the customer calls to activate by phone.

Requesting Unlock Key by e-mail, Fax or Phone

The customer fills out the screen for e-mail activation or Fax Activation and sends you an e-mail or Fax with the activation request or calls to activate by phone. You use the installation codes provided to generate an Unlock Key.

Click on the image to expand

E-Mail Activation Request

Click on the image to expand

Fax Activation Request

Click on the image to expand

Phone Activation Request

For details see workflow - Activation by e-mail, Phone, Fax

If a hardware ID can not be retrieved (e.g. there is no network adapter) then the code is empty.

Create Unlock Key using a Web Page

If the user has no Internet connection on his PC, he could use another PC to create an Unlock Key.

Details

·An Unlock Key can only be used once. There is no online validation but it is stored in the license file. If the user reinstalls the application and the license file is replaced with the reinstallation, the Unlock Key can be used again.

·An Unlock Key only unlocks one module. If multiple Serial Numbers in combination with activation by e-mail, fax or phone have been used, for each single Serial Number an Unlock Key is needed


Create Unlock Key using License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the License Generator and load the demo-EasyGo.xml project template or your application template.

In the TAB Keys select Unlock Key

Enter the Installation Code (Hardware ID) which was transmitted from the customer and select the type of copy protection (Volume ID, MAC Address, Hostname etc.) you want to use. You have to enter only one hardware ID.

Use CTRL + V to paste the installation code.

After pressing the button Create Unlock Key with Copy Protection, the key including the extended description is copied into the text box. It is also copied into the clipboard. The content of the text box can be saved to a file with the button Save generated keys to file.

Send the Unlock Key to the user, which would use the key in the screen Enter Unlock Key.

If you send out a key by mail, turn on the option: Description. This will create additional text for each key to ensure, that the user types in the correct letter.

RCGEH-5EPc3-9E7IL-3tI8X-WQU5k-6v141

In block 3 at position 4 there is the capital letter I

In block 4 at position 3 there is the capital letter I

See also

Create Unlock Key without Copy Protection
Unlock Key - all options
Other Activation Keys
Explanation of all installation codes


Create Unlock Key on the Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Using the Activation Server 4 to create the Unlock Key ensures, that the Serial Number can not be used twice (e.g. customers sends the Serial Number key by fax and uses the key on another PC with Online activation).

Log into the Web Administration Interface and select Keys, Manual Product Activation.

For more details change to Activation Server 4 help

See also

Explanation of all installation codes
Unlock Key - all options


Create Unlock Key using e-mail Activator Service
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The e-mail Activator Service is a service, which scans an e-mail account for activation requests and automatically performs the product activation. The end user will instantly get an Unlock Key back.

The main features are:

·Scan an e-mail

·Decide, if it is an e-mail for product activation or another type of e-mail

·Perform an activation or reactivation using the Activation Server 4 server

·Send back an e-mail to the end user with different e-mail content for: successful activation, denied activation (in case the Serial Number / ID was already used or locked, Erroneous Activations)

·Reply messages can be defined in all languages supported by Licence Protector

·Notification message for every successful or erroneous e-mail

·Send all e-mails to an archive e-mail account

Click here for more information about the service.


Create Unlock Key using own user interface
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to provide an own user interface (e.g. a browser based interface or CRM system) to create an Unlock Key, you can create the Unlock Key in a batch mode process. This requires the Automatic License Generator.

The workflow would be as follows:

·Your application writes the installation code in an xml file (customerdata.xml)

·The Automatic License Generator is invoked

·The result (Unlock Key) is provided in a text file (unlock-key.txt)

To create the Unlock Key, you need 3 configuration files:

·the project template

·a configuration file for the Automatic License Generator

·a file with the customer data

All files are XML files.

Download sample configuration

Download the sample files and unzip all files into the folder of the Automatic License Generator (default is ..\Licence Protector\4.1\Automatic Generator).

Configuration File

The configuration file contains all the instructions for the Automatic License Generator. The name in the sample is config-autogenerator-unlockkey.xml.

Change

·ProjectFilename = your project filename

All other settings need not be changed.

File with customer data

Your application has to create this file. It just contains the installation code you got by e-mail, fax or phone. The name in the sample is customerdata.xml.

The product ID must match the product ID in the configuration file config-autogenerator-unlockkey.xml. Use 1.

Change

·InstallationCode to the installation code of the customer

·CopyProtection = the copy protection type (.e.g 1= Volume ID, 2 = MAC address) you want to use. The 8 digit installation code has to be the code for this copy protection type

Invoke Automatic License Generator

Your application can invoke the Automatic License Generator using parameters for the filenames. The sample includes a batch file with the name create-unlock-key.bat to start the batch process.

Command Line

autolicgenerator410.exe -o customerdata.xml -c config-autogenerator-unlockkey.xml -xk unlock-key.txt

where

·autolicgenerator410.exe is the latest Automatic License Generator

·-o customerdata.xml specifies the file with the customer data

·-c config-autogenerator-unlockkey.xml specifies the configuration file

·-xk unlock-key.txt specifies the result file with the Unlock Key (if the result file should be in xml format then just add the parameter -XML)

The Unlock Key is written into the text file unlock-key.txt and your application has to read this file.

A full documentation of all configuration options and additional settings is provided in the chapter Automatic License Generator.

See also

Unlock Key - all options
Explanation of all installation codes


Create Unlock Key without Copy Protection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the product should be unlocked with copy protection, select Create Unlock Key using License Generator instead. Unlocking without Copy Protection will just remove the time limitation of the evaluation version, but the user could copy the product and use it on multiple PCs.

Start the License Generator and load the demo-EasyGo.xml project template or your application template.

In the TAB Keys select Unlock Key without Copy Protection.

Select Module

Select the module, for which you want to create a Serial Number. By default, all modules will appear. A good idea is to define in the project template, which module is used as the main module. Then only this module will appear in the pick list. See Define module for Serial Number

After pressing the button Create Unlock Key without Copy Protection, including the extended description is copied into the text box. It is also copied into the clipboard. The content of the text box can be saved to a file with the button Save generated keys to file.

If you send out a key by mail, turn on the option: Description. This will create additional text for each key to ensure, that the user types in the correct letter.

RCGEH-5EPc3-9E7IL-3tI8X-WQU5k-6v141

In block 3 at position 4 there is the capital letter I

In block 4 at position 3 there is the capital letter I

See also

Unlock Key - all options
Unlock Key with Copy Protection


Create Unlock Key using a Web Page
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the user has no Internet connection on his PC, he could use another PC to create an Unlock Key.

Configuration settings

To use this feature you have to:

·Upload the Serial Numbers to the Activation Server 4. Either import a complete key list with own Serial Numbers / ID or create Serial Numbers using the Activation Server 4

·Configure the Activation Server 4 that only keys are accepted, which are already stored in the database. See Serial Number has to be saved before it can be used in the product configuration how to configure this feature

·Configure the security settings so that the key generator can only be used from a specific IP address or use a password

·Configure how many requests per minute are allowed to block a possible SPAM attack

Source Code integration

There is no standard screen available. Just display the hardware ID(s) on the screen including an explanation, how the user can retrieve the Unlock Key on another PC. Use GetInstcode to retrieve the hardware ID(s).

Web Page

Create a Web Page where the user can type in at least the following information:

·Serial Number / ID

·Name

·e-mail address

·Installation Code / Hardware ID

If you want to allow a reinstallation on the same PC, the user would have to type in several installation codes

Use the following https command to create the Unlock Key and display the key on your web page

https://servername/lpweb/KeyGenerator.aspx? |
projectname=demo-easygo& | 'project name defined in the project template
entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4W& | 'Serial Number / ID
instcodetype=3& | 'Installation Code / Hardware ID used for copy protection. This has to match with Selected IDs for initial activation in the product configuration (product template: InstCodeTypex)
instcode=170D9F7C& | '8 digit hardware ID
requesttype=2& | 'must be 2
moduleid=QHD001& | 'module ID defined in the project template. Normally this is the main module ID.
customername=Smart Inc.& | 'name of the user
email=tom.hanks@smartinc.com | 'e-mail address of the user (optional)
oemname=mycompany& | 'name of the manufacturer of the product. This information is stored on the Activation Server 4 (optional)
allkeys=true& | 'If multiple Unlock Keys are generated, you can display only the first or all. For Easy-Go use true (optional)
password=ycnsjldsd78z9h | 'password - see security settings. The IP address is automatically sent with the request to the Activation Server 4

Click on the link below to create an Unlock Key for the Serial / ID LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4W using the demo Activation Server 4. It will accept the same Serial Number multiple times as the hardware ID is always the same. The Unlock Key will work only on the PC with this hardware ID.

https://registerserver.net/lptest/lpweb/KeyGenerator.aspx?projectname=demo-easygo-40&entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4W&instcodetype=13&instcode=170D9F7C&requesttype=2&moduleid=QHD001&customername=Smart Inc.&email=tom.hanks@smartinc.com&oemname=mycompany&allkeys=true&password=ycnsjldsd78z9h

Multiple Installation Codes

If reinstallation on the same PC should be supported, then the user has to type in multiple installation codes. The number of installation codes required depend on the settings defined in product configuration - Selected IDs for reactivation - ( product template: CheckInstCodeTypex).

If you want to pass multiple installation codes, you have to send ALL possible codes. This version of Licence Protector supports 13 different codes.

You have to omit the value instcodetype and provide all 13 installation codes separated with a semicolon. If for the reinstallation e.g. only 3 hardware IDs are required, the others can be left blank.

https://registerserver.net/lptest/lpweb/KeyGenerator.aspx?projectname=demo-easygo-40&entrykey=LNGEG-5IPc6-9E7Im-3tQ8X-MQU5k-6ii4S&instcode=170D9F7C;E1266C60;;CB433287;;;;;;;;;&requesttype=2&moduleid=QHD001&customername=Smart Inc.&email=tom.hanks@smartinc.com&oemname=mycompany&allkeys=true&password=ycnsjldsd78z9h

·You have to use the method GET (not POST) for the http request

·For a complete list of all parameters including the changing of the security parameters like password see Create Keys by external applications


Other Activation Keys
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After the product is delivered, you can change license information using an Activation Key. A key can change all relevant license information like:

·Add number of network licenses

·Change expiry date

·Set a module to available = yes

All details about Activation Keys and how they are built with the License Generator can be found in the Chapter Activation Key - Intro

You can create an Activation Key using different generators - see create keys.

· Create additional keys using License Generator

· Create additional keys on the Activation Server 4

The Activation Key can be applied:

·During the trial period or when an error occurs, using the option Show License Information

·After the product is activated using the License Viewer

See also

Create an Activation Key on the Activation Server
Activation Key - Intro
Create Activation Key using License Generator


Create Additional Keys using License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Start the License Generator and load the demo-EasyGo.xml project template or your application template.

In the TAB Keys select Additional Licenses

Select Module

Select the module, for which you want to create a key. All modules will appear.

Number of...

If a network license is used (more then 1 license per PC / user / concurrent user), the number of PCs / users / concurrent users can be increased or decreased by sending an Activation Key to the customer.

This key adds the selected number of licenses to the existing value in the license file. If you have an existing license with 5 users and the additional license includes 2 users, this results in a license for 7 users after applying the key. Select: Overwrite value in license file if you want to overwrite the existing value.

You can change the value for a Yes/No module or also set a value for a counter module.

A value with 0 will not change the existing value in the license file. For a Yes/No module select: Unchanged

Number of days to evaluate

This option is to prolong an existing trial period. Make an Activation Key with:

·Number of .. = 0 or for a Yes/No Module = Unchanged

·either select: "Number of days" to evaluate or "Expiry Date"

Online Validation - Requires Activaton Server

If you choose the option Online validation required, the workflow for applying a key is as follows:

·The user needs an Internet connection to apply a key

·The key is transferred to the Activation server and is stored in the database

·If the key was already used, the key can not be applied

·If the key was already used on the same machine and reinstallation is allowed, then the key can be applied

Using this option you can create Activation Keys without knowing the license file ID or the installation code from the user and it is ensured that the key can only be used once.

Activation Screen which pops-up when the user types in the key

Note

·You can allow using the Activation Key multiple times on different machines by changing the maximum key usage on the Activation Server Administration Interface - see How can I change how often a key / ID can be used?

·You can allow to using the Activation Key multiple times on the same machine - see chapter Allow Reinstallation / multiple usage of an Activation Key

This feature requires the Activation Server 4

Using an installation code / hardware ID

If Copy Protection = None is selected, the key can be used on any machine.

You can bind an Activation Key to the Installation Code (Copy Protection) of a license file. The Activation Key can then be used only on the PC / Server when the hardware ID in the key matches the hardware ID used for copy protection in the license file.

You can retrieve the Installation Code from the customer with the License Viewer.

You have to use the installation code which is marked with

Removes time limitation

The option removes the expiry date of a license.

To ensure, that a key can not be used on multiple machines, there are 2 options available:

Number of desired keys

Either generate one key per customer or generate a complete key list with hundreds of keys. For details see Create a Key List

After pressing the button Create Key for additional licenses, the key including the extended description is copied into the text box. It is also copied into the clipboard. The content of the text box can be saved to a file with the button Save generated keys to file.

If you send out a key by mail, turn on the option: Description. This will create additional text for each key to ensure, that the user types in the correct letter.

RCGEH-5EPc3-9E7IL-3tI8X-WQU5k-6v141

In block 3 at position 4 there is the capital letter I

In block 4 at position 3 there is the capital letter I

If you need more configuration options for a key, see Create Activation Key


Create Additional Keys on the Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you use the Activation Server 4, the recommended way to create an Activation Key is the browser based administration interface of the Activation Server 4.

Select Keys, Create an Activation Key.

Click to enlarge

Create an Activation Key

.

Complete description - Create an Activation Key using Activation Server 4

See also

Activation Key - Intro
Create Activation Key using License Generator


Create a Key List with Activation Keys
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have only a few installations to manage, it is sufficient to generate the Activation Key on a one-by-one basis manually. In case of a large volume delivery like hundreds of CD's, a key list is necessary. The key list file would then be sent to the CD duplication company. Online Shops that do not support an integrated generator often support the upload of a key list.

The key list file can be generated within the screen - Keys, Additional Licenses. Enter the desired number of keys, press button Create Key for additional licenses and then the button Save generated keys to file. The key list is saved as a text file.

Example

Cv9E0-5EP93-9EBIO-3t68X-yQL6k-6o14g

6D9ES-5EP93-9EBIo-3t68X-tQL6k-6Z14D

2z9Eg-5EP93-9EBIr-3t68X-AQL6k-6z148

eG9E4-5EP93-9EBIS-3t68X-FQL6k-6U14a

mj9Ep-5EP93-9EBI2-3t68X-1QL6k-6V14A

z29E1-5EP93-9EBI6-3t68X-xQL6k-6g14t

mx9Et-5EP93-9EBI1-3t68X-9QL6k-6g145

qt9EQ-5EP93-9EBIh-3t68X-SQL6k-6W14A

e19Eu-5EP93-9EBI0-3t68X-dQL6k-6F14i

N09Eg-5EP93-9EBIC-3t68X-vQL6k-6n149

A key list can also be created in a batch process - see Create a key list with the Automatic License Generator


Prolong a trial / evaluation version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To prolong a trial version, create a key to change the expiry date.

Number of days to evaluate

Specify the number of days the trial version should be extended. The day count starts when the user applies the Activation Key

Expiry Date

The Activation Key would change the expiry date to this date in the license file.

You could check Online Validation required to ensure, that the key cannot be used twice.

The field: Number of.... must be set to 0. Otherwise the number of licenses would be increased


Serial Number with additional keys
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

By default, the user has to type in the Serial Number and after the activation is done, he can type in additional keys.

It is possible, to deliver the Serial Number + all additional keys, separated with a semicolon. All keys can then be used as a 'key chain' where the first key must be the Serial Number.


How often can a key / ID be used?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The default usage of a key / ID is 1. This can be changed in different ways.

Change the maximum key usage only for ONE SINGLE key

Create a new Key

When a key is created using the Web Administration Interface, the maximum Key / ID usage can be defined. You also have to check the option: Store key in Activation Server

Create Key - change Maximum Key / ID Usage

Create Key - change Maximum Key / ID Usage

Change a key / ID which is unused

In case a key was already created but never used, you can add this key on the Activation Server 4.

Select: Add a Key on the Activation Server , add the key and define the maximum Key / ID usage

Add Key - change Maximum Key / ID Usage

Add Key - change Maximum Key / ID Usage

Change a key / ID which was already used

If a key / ID was already used, you search for the key and modify it (TAB Manage Activations, Key List or Transactions)

Change Maximum Key / ID usage

Change Maximum Key / ID usage

Change the maximum key / ID usage for ALL keys / IDs of one project

This is done in the product configurationon the Activation Server 4. It is valid for all future key / ID usages (even if a key was already used) of a project.

Field: Maximum Key / ID usage for Serial Numbers and Maximum Activation Key usage for Activation Keys

Multiple usage of a key on the same PC

If a Serial Number / ID / Key is used again on the same PC, it does not count as a new key usage.

The details are explained in the chapter: Allow Reinstallation / Product Reactivation


Analyze Activation Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

All Activation Keys have the same format and you cannot even guess, which settings a key would change.

The License Generator allows to analyse an Activation Key. Either select the icon [image] in the title bar or in the Tab Keys.

The clipboard content is automatically inserted. Press the button Analyze Key. You get a complete list of all the settings of the Activation Key.


Installation and Distribution
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You may distribute the Licence Protector DLL to any number of customers. To create your installation package you need to know more about

· Required Files

· Installation and System Requirements


Required files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To distribute Licence Protector you need:

· The Licence Protector DLL

· The license File


Licence Protector DLL / COM EXE

Navigation: Installation and Distribution > Required files:

Licence Protector DLL
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You must distribute one of the LicProtector.DLL files or the COM Exe.

See - Add the LicProtectorEasyG.dll to your project which DLLs are available.

All available DLLs can be found in the folder ..\files for distribution.


Licence File

Navigation: Installation and Distribution > Required files:

License File
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In addition to these files you need to distribute your license file. You may never distribute a license file which you already have opened with one of Prepare commands because then it is modified. Copy the license file directly after creation to you installation folder. You can name this file like you want.

For EasyGo you need a generic license File - see: how to create a generic license File.


Installation and Distribution
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

System Requirements

The Licence Protector DLL supports Windows NT to Windows 8. Every Windows System (especially NT) needs the latest service pack. .NET applications are supported as long as they run on the specified Windows systems.

Licence Protector runs on Windows 7 / 8 32bit and 64bit. The application which uses the Licence Protector DLL must be a 32bit application.

Depending on the installation type there are different installation procedures:

· Installation on a single PC

· Network Installation

· Register DLL / COM exe without admin rights

· Use DLL without registering

· Unregister DLL / COM exe

· Uninstall an application


Installation on a single PC
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Installation Requirements

Until Vista, it was possible to copy the license file to the program directory. To ensure that a installation is working on all platforms including Vista / Windows 8 we recommend not using the program directory.

Necessary Rights

During Installation

·Depending on the registration tool (see below) admin or non admin rights

During Runtime of the Application

·read and write permission to the license file

·read and write permission to the registry (hkey_current_user)

If Licence Protector is used within a .NET server application, check if the .NET server user has the necessary rights.

Installation of the DLL

The folder ..\files for distribution contains all Licence Protector DLLs. There is an folder with a compressed version and uncompressed version. We recommend using the uncompressed version because it works with all compilers and operating systems.

Licence Protector offers different ways to register the DLL / COM exe:

·Using LPRegister410.exe - it registers the DLL / COM exe without needing administrator rights

·Do not register the DLL if you use a manifest file. Administrator rights are not needed. Manifest files are not supported for the COM exe

·Register the DLL / COM exe with the windows tool regsvr32.exe or the inbuilt option of an installer. This requires administrator rights

You should copy the licprotector410.dll to the \windows\system32 folder although it could also be installed in your program directory. As each DLL version of Licence Protector has an own ProgID, multiple different versions can be installed on the same machine.

Best Practice

·If your installer needs administrator rights, use the inbuilt option of the installer or regsvr32.exe. To use regsvr32.exe add a shell execute command in the installer which invokes regsvr32.exe
- Register the DLL: Execute "c:\windows\system32\regsvr32.exe" " ....\pathname\LicProtector410.dll" (note: this requires administrator rights)
- Register the COM exe: LicProtector410.exe /regserver (note: this does not require administrator rights)

·If your installer does not need administrator rights then use LPRegister410.exe

·If you do not have an installer and you only copy files to a folder, use a manifest file

·If you just want to register the DLL manually on one system, use LPRegister410.exe. Using regsvr32.exe would work as follows:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run regsvr32 "....\pathname\LicProtector410.dll” in the command window

If multiple users on one computer or services use the COM exe, then you have to register it using administration rights and the command: LicProtector410.exe /regserver /NOREDIRECT

Vista / Windows 7 / Windows 8 and MSI files
Some installers generate a message HRESULT -2147220472 or -2147023898. This is due to missing rights during installation. Use LPRegister410.exe to register the DLL and not the installer built in dll register function.

Installation of the license file

Each user needs a read and write access to the license file. Because of new security restrictions on Windows Vista / Windows 7 / Windows 8 you perhaps have to change an existing installation routine if you copy configuration files to c:\program files folder.

Windows Vista / Windows 7 / Windows 8

Considerations

The installation has to be done in administrator mode. A user with a standard account will automatically be prompted to provide administrator credentials.

If User Account Control is enabled (default) the following installation scenario is NOT working.

·install the licence file to C:\Program Files\YourApp\app.lic

If the standard user starts your application, Licence Protector will write back information in the licence file (depending on the features your are using). The file would be virtualized to the folder C:\Users\username\AppData\Local\VirtualStore\Program Files\YourApp\app.lic.

Although your application would open the licence file on C:\Program Files\YourApp\app.lic, the file would be opened in c:\Users\username\AppData\Local\VirtualStore\Program Files\YourApp\app.lic. The result would be that each user has a different licence file.

Recommendation

Although we found no recommended procedure from Microsoft how to share a file on one PC for all users, the following installation process will work.

·Install the licence file to C:\ProgramData\yourcompany name\appname\app.lic

By default, standard users have only Read access and the folder is not visible. See below how to set write access to this folder.

Retrieve folder names

You can retrieve the folder name via the registry.

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Shell Folders
Common AppData | C:\ProgramData\
Common Programs | C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Common Documents | C:\Users\Public\Documents
Common Desktop | C:\Users\Public\Desktop
Common Start Menu | C:\ProgramData\Microsoft\Windows\Start Menu
CommonPictures | C:\Users\Public\Pictures
CommonMusic | C:\Users\Public\Music
CommonVideo | C:\Users\Public\Videos
Common Favorites | none
Common Startup | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
Common Templates | C:\ProgramData\Microsoft\Windows\Templates
Common Administrative Tools | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools
Personal | none

Windows NT - XP

Considerations

The installation has to be done in administrator mode. A user with a standard account has to install with administrator credentials.

Recommendation

To use the same installation process for all operating systems you need a folder which allows to share a file on the PC for all users.

·Install the license file to C:\Documents and Settings\All Users\Application Data\yourcompany name\appname\app.lic

By default, standard users have only Read access and the folder is not visible. See below how to set write access to this folder.

Retrieve folder names

You can retrieve the folder name via the registry.

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Shell Folders
Common AppData | C:\Documents and Settings\All Users\Application Data
Common Programs | C:\Documents and Settings\All Users\Start Menu\Programs
Common Documents | C:\Documents and Settings\All Users\Documents
Common Desktop | C:\Documents and Settings\All Users\Desktop
Common Start Menu | C:\Documents and Settings\All Users\Start Menu
CommonPictures | C:\Documents and Settings\All Users\Documents\My Pictures
CommonMusic | C:\Documents and Settings\All Users\Documents\My Music
CommonVideo | C:\Documents and Settings\All Users\Documents\My Videos
Common Favorites | C:\Documents and Settings\All Users\Favorites
Common Startup | C:\Documents and Settings\All Users\Start Menu\Programs\Startup
Common Templates | C:\Documents and Settings\All Users\Templates
Common Administrative Tools | C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools
Personal | C:\Documents and Settings\AN\My Documents

Setting Write Access to a folder during installation.

Some installers have built in options to change rights on folders. You cannot use the standard Windows tool cacls.exe or icacls (Vista) because you have to address the user / group name you want to change in the language of the operation system - e.g. 'users' or 'Benutzer'.

There is a tool SetAcl.exe which allows using SID to change the permission. The tool can be downloaded here: http://setacl.sourceforge.net/html/examples.html . Documentation for the SID can be found here (only German): http://www.grurili.de/index.html?/Grundlagen/WellKnown_SIDs.htm

Your installer could use the following sequence

·Copy setacl.exe to the installation directory

·Execute Setacl.exe e.g. "maindir\SetAcl.exe" -on "maindir" -ot file -actn ace -ace "n:S-1-5-32-545;p:full;s:y" - This will set full rights to the group users. The SID S-1-5-32-545 is used instead of the name users

(note: maindir is the folder name like c:\ProgramData\yourcompany name\appname)

·Delete setacl.exe

Sign your Installer file

Although you could deliver an unsigned installer file, we recommend adding your digital signature. You can buy a code-signing certificate from one of the accredited providers like www.verisign.com, www.thawte or www.comodo.com.

With the digital signed installer file your users do not get warning messages when they download the file or launch the application.

First check your installation tool if it supports to add a digital signature. As installers often add their own CRC checks a digital signature would destroy the installer file. Therefore the installer tool has to add the signature first before the CRC check is added.


Network Installation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The network installation needs a shared folder on the server for the license file - for details see Network license - how it works. A 'Server' is not necessary. The shared folder could also be on an external hardware drive like NAS drive.

Necessary Rights

During Installation

·Depending on the registration tool (see below) admin or non admin rights

During Runtime of the Application

·read and write permission to the license file on the server

·read and write permission to the registry (hkey_current_user)

If Licence Protector is used within a .NET server application, check if the .NET server user has the necessary rights.

Installation of the DLL

The folder ..\files for distribution contains all Licence Protector DLLs. There is an folder with a compressed version and uncompressed version. We recommend using the uncompressed version because it works with all compilers and operating systems.

Licence Protector offers different ways to register the DLL / COM exe:

·Using LPRegister410.exe - it registers the DLL / COM exe without needing administrator rights

·Do not register the DLL if you use a manifest file. Administrator rights are not needed. Manifest files are not supported for the COM exe

·Register the DLL / COM exe with the windows tool regsvr32.exe or the inbuilt option of an installer. This requires administrator rights

You should copy the licprotector410.dll to the \windows\system32 folder although it could also be installed in your program directory. As each DLL version of Licence Protector has an own ProgID, multiple different versions can be installed on the same machine.

Best Practice

·If your installer needs administrator rights, use the inbuilt option of the installer or regsvr32.exe. To use regsvr32.exe add a shell execute command in the installer which invokes regsvr32.exe
- Register the DLL: Execute "c:\windows\system32\regsvr32.exe" " ....\pathname\LicProtector410.dll" (note: this requires administrator rights)
- Register the COM exe: LicProtector410.exe /regserver (note: this does not require administrator rights)

·If your installer does not need administrator rights then use LPRegister410.exe

·If you do not have an installer and you only copy files to a folder, use a manifest file

·If you just want to register the DLL manually on one system, use LPRegister410.exe. Using regsvr32.exe would work as follows:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run regsvr32 "....\pathname\LicProtector410.dll” in the command window

If multiple users on one computer or services use the COM exe, then you have to register it using administration rights and the command: LicProtector410.exe /regserver /NOREDIRECT

Vista / Windows 7 / Windows 8 and MSI files
Some installers generate a message HRESULT -2147220472 or -2147023898. This is due to missing rights during installation. Use LPRegister410.exe to register the DLL and not the installer built in dll register function.

Installation of the license file

Each user needs a read and write access to the license file. There is no special consideration for Vista / Windows 7 / Windows 8.

Copy the license file to a folder on the server and assign the license file a read and write permission for all users.

If you want to change the permission with an installer see below.

Setting Write Access to a folder during installation.

Some installers have built in options to change rights on folders. You cannot use the standard Windows tool cacls.exe or icacls (Vista) because you have to address the user / group name you want to change in the language of the operation system - e.g. 'users' or 'Benutzer'.

There is a tool SetAcl.exe which allows using SID to change the permission. The tool can be downloaded here: http://setacl.sourceforge.net/html/examples.html . Documentation for the SID can be found here (only German): http://www.grurili.de/index.html?/Grundlagen/WellKnown_SIDs.htm

Your installer could use the following sequence

·Copy setacl.exe to the installation directory

·Execute Setacl.exe e.g. "maindir\SetAcl.exe" -on "maindir" -ot file -actn ace -ace "n:S-1-5-32-545;p:full;s:y" - This will set full rights to the group users. The SID S-1-5-32-545 is used instead of the name users

(note: maindir is the folder name like c:\ProgramData\yourcompany name\appname)

·Delete setacl.exe

Sign your Installer file

Although you could deliver an unsigned installer file, we recommend adding your digital signature. You can buy a code-signing certificate from one of the accredited providers like www.verisign.com, www.thawte or www.comodo.com.

With the digital signed installer file your users do not get warning messages when they download the file or launch the application.

First check your installation tool if it supports to add a digital signature. As installers often add their own CRC checks a digital signature would destroy the installer file. Therefore the installer tool has to add the signature first before the CRC check is added.


Register DLL / COM exe
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The DLL / COM exe has to be registered. Typically an installer has an inbuilt feature to register a DLL or EXE file. In case the installer does not have this option or you want to manually register the file use the following command line.

·regsvr32.exe "..path to DLL\ LicProtector410.DLL"

·LicProtector410.EXE /regserver

You need admin rights to register the component

See also: Register DLL / COM exe without admin rights


Register DLL / COM exe without admin rights
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with an own tool to register the DLL - lpregister410.exe. You can use it as as standalone application or within your installer.

The tool offers a unique feature. It registers the DLL and the COM exe without needing administrator rights.

How is it working?

LPregister bypasses the operating system when a registration is done. If a user has no administration rights, it registers the DLL / COM exe only for this user. If a user has administrator rights, the DLL / COM exe is registered like using Windows regsvr32.exe for all users.

Example

·User A has no administrator rights. The DLL / COM exe is registered for this user. If user B logs into the same machine the DLL / COM exe is not available and has to be registered again for user B

·User A has administrator rights. The DLL / COM exe is registered on machine level. If user B logs into the same machine the DLL / COM exe is also registered for user B

Installation

You find lpregister410.exe in the folder Licence Protector\4.1\files for distribution

Copy the file to the same directory, where the DLL ( LicProtector410.DLL) or COM exe ( LicProtector410.EXE) is located. Start lpregister410.exe. It will search for the Licence Protector files and register it.

If the DLL / COM exe is on another folder, you can specify the path and filename with a command line parameter. Only the names LicProtector410.dll and LicProtector410.exe are supported. Other DLLs cannot be registered.

Example

lpregister410.exe - registers the DLL or the EXE if the file is on the same folder like lpregister410.exe

lpregister410.exe "c:\program files\myapp\LicProtector410.dll"

lpregister410.exe "LicProtector410.exe"

The name LicProtector410.dll and LicProtector410.exe when used as a command line parameter is case sensitive and must be exactly written with upper and lower case letters like in the example above

There is another option to use the DLL without administrator rights by using manifest files.


Use DLL without registering

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

You can install the Licence Protector DLL (not COM exe) without registering it. The DLL is loaded during runtime. This allows an installation process which does not require administration rights.

All compilers - use a manifest file

You need a manifest file with the same name as the EXE file - e.g if the application file name is demo-easygo.exe the manifest filename must be demo-easygo.exe.manifest. Find below a sample manifest file for the License Tester which can also be downloaded here (sample is for version 410).

You have to change

·Name - name of the EXE file

·Version - version number of the EXE file

·File name = name of the Licence Protector DLL

·Size = size of the LIcence Protector DLL

·LIBID - can be found for each DLL version in the chapter Add the LicProtector410.dll

·CLSID - can be found for each DLL version in the chapter Add the LicProtector410.dll

·ProgID - can be found for each DLL version in the chapter Add the LicProtector410.dll

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

<assemblyIdentity name="licence-tester.exe" version="3.1.0.261" type="win32" processorArchitecture="x86"/>

<file name="LicProtector410.dll" hashalg="SHA1">

<comClass

clsid="{91D35F95-60F6-446C-9433-3BEFAE85640B}"

description="LicProtector Object"

tlbid="{BEEFFA1A-D2C9-4875-9B7B-2FE406E7A19C}"

threadingModel="apartment"

progid="LicProtector.LicProtectorDLL410"/>

<typelib

tlbid="{BEEFFA1A-D2C9-4875-9B7B-2FE406E7A19C}"

version="4.0"

helpdir=""

flags="hasdiskimage"/>

</file>

</assembly>

Some development tools like C++ compile a manifest file in the EXE file. Windows XP uses the external manifest file but Windows 2003, Vista or Windows 8 would use this internal manifest file and ignore the external manifest file. You can edit the internal manifest file in the source code and change it (recommended) or remove the internal manifest file. Removing the file could cause problems, e.g. missing skinning support.

.NET - use DLL without registering

Visual Studio allows an installation without registering the DLL. The flag Isolated must be set to true.

Article about the isolated COM

http://qualapps.blogspot.com/2007/06/isolated-com.html

Java - use DLL without registering

To use the DLL without registering, you have to build a standalone EXE file and the manifest file like described above.

Using .JAR files are not supported. They need to register the DLL.

See also article regarding supported operating systems

http://msdn.microsoft.com/en-us/library/f8h7012w.aspx

Tool to create manifest files and background information

http://www.mazecomputer.com/index.htm

There is another option to use the DLL without administrator rights by using LPregister410.exe


Unregister DLL / COM exe
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Unregister DLL

Unregister the DLL using regsvr32.exe:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run regsvr32 /u "....\pathname\LicProtector410.dll” in the command window

Unregister COM exe

To unregister the COM exe using the following command line:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run "....\pathname\LicProtector410.exe” /unregserver in the command window


Uninstall an application
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

When you uninstall a product, you should unregister the DLL / COM exe and transfer the license.

Unregister the DLL / COM exe

If your application is installed using an installer application, the unregister process of the DLL / COM exe is done automatically by the installer. How to manually unregister see Unregister / DLL / COM exe

License Transfer

Typically users don't bother to transfer the license before they uninstall an application. A good idea is to do the license transfer automatically during the uninstall process. This requires only a few API commands.

Invoke your application with a command line like /uninstall. Then process the following API commands

· PrepareFoce

·Only if the product is already activated, do a license transfer (GetWebActivation = 2)

·Disable screen messages using ShowWASStartPage, ShowWASProgressPage , ShowWASResultPage

·Retrieve main module ID using MainModuleID

·Retrieve the Serial Number using GetSerial. Only if the result string is not empty (a Serial Number is available) do the license transfer

· DeactivateModule - this deactivates the license and does the license transfer. Ensure that you transfer the complete license file (SendLicData = true)

·Quit your application

When the user installs the application on a new computer, you have to activate the license transfer functionality with SetRegisterLicTransfer using the exact same values (File Description,Encryption Code) you used in DeactivateModule. During product activation with PrepareAndCheck, the old license file will be automatically downloaded.

Do the license transfer only for a single user installation. A network license should be manually transferred by the admin using the workflow explained in Transfer a license from PC A to PC B


Checklist for product delivery
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After you have done the code integration and you are ready to start with the product delivery, you could use this checklist to ensure, that you have completed all necessary steps:

·Create a Read/Write key and Project Secure Key to get a personal encryption for your product. Use TAB File, Copy Project

·Define a unique project name

·If you use online activation, add the URL to the activation server in the project template

·In case you use a CRC check, make sure you use the correct CRC values for the DLL used

·Create a brand new license file, using the License Generator. Never deliver a file which was used for testing! Every time you want to make a new test on the same machine, you have to create a new license file. Only a new license file guarantees to have the same situation like a user would have, after he installed your software

·Copy the latest project template and also the definition files on the Activation Server 4 - see configure a project

·Make a full test using online activation and also manual product activation by e-mail. If is very important to test the manual product activation to ensure, that the setting TAG <ActivationStateAfterCPon> is correct. Create the Unlock Key for the manual product activation on the Activation Server 4 or if you don't use the server, use the License Generator

·In case you want to check if the keys you generated have the expected values,analyze the Activation Key

·Make a reinstallation on the same machine using the same Serial Number in case you configured to allow a reinstallation. The reinstallation should work.

·Make the same test on a different machine using the same Serial Number. The Activation Server 4 should reject the Serial Number

·In case you implemented to transfer a license, make a license transfer test

·In case you use a shop system, place a test order and use the Serial Number from the shop for an additional activation test

Now you are ready to package your software. Create a new license file and use this file in the installation package. Check the chapter: Installation and Distribution issues to get detail information about the installation process.


Windows Vista / Win 7 / Win 8 Guide
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

As a licensing and copy protection system hooks deeply into the Windows operating system, it often requires modifications.

Licence Protector is fully Windows Vista / Win 7 / Win 8 compatible:

·Considers registry limitations

·Runs with limited user rights

·Offers a signed DLL / COM exe

To use your application with Licence Protector and Windows Vista / Win 7 / Win 8 only a few modifications are necessary:

·Install Licence Protector version 4.0 or higher

·Use the COM exe

·Install the license file to C:\ProgramData\yourcompany name\appname\app.lic - see details

How to retrieve the correct folder name

Considerations

The installation has to be done in administrator mode. A user with a standard account will automatically be prompted to provide administrator credentials.

If User Account Control is enabled (default) the following installation scenario is NOT working.

·install the licence file to C:\Program Files\YourApp\app.lic

If the standard user starts your application, Licence Protector will write back information in the licence file (depending on the features your are using). The file would be virtualized to the folder C:\Users\username\AppData\Local\VirtualStore\Program Files\YourApp\app.lic.

Although your application would open the licence file on C:\Program Files\YourApp\app.lic, the file would be opened in c:\Users\username\AppData\Local\VirtualStore\Program Files\YourApp\app.lic. The result would be that each user has a different licence file.

Recommendation

Although we found no recommended procedure from Microsoft how to share a file on one PC for all users, the following installation process will work.

·Install the licence file to C:\ProgramData\yourcompany name\appname\app.lic

By default, standard users have only Read access and the folder is not visible. See below how to set write access to this folder.

Retrieve folder names

You can retrieve the folder name via the registry.

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Shell Folders
Common AppData | C:\ProgramData\
Common Programs | C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Common Documents | C:\Users\Public\Documents
Common Desktop | C:\Users\Public\Desktop
Common Start Menu | C:\ProgramData\Microsoft\Windows\Start Menu
CommonPictures | C:\Users\Public\Pictures
CommonMusic | C:\Users\Public\Music
CommonVideo | C:\Users\Public\Videos
Common Favorites | none
Common Startup | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
Common Templates | C:\ProgramData\Microsoft\Windows\Templates
Common Administrative Tools | C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools
Personal | none

·Set write access for the group 'users' to this folder - see details

Setting Write Access to a folder during installation.

Some installers have built in options to change rights on folders. You cannot use the standard Windows tool cacls.exe or icacls (Vista) because you have to address the user / group name you want to change in the language of the operation system - e.g. 'users' or 'Benutzer'.

There is a tool SetAcl.exe which allows using SID to change the permission. The tool can be downloaded here: http://setacl.sourceforge.net/html/examples.html . Documentation for the SID can be found here (only German): http://www.grurili.de/index.html?/Grundlagen/WellKnown_SIDs.htm

Your installer could use the following sequence

·Copy setacl.exe to the installation directory

·Execute Setacl.exe e.g. "maindir\SetAcl.exe" -on "maindir" -ot file -actn ace -ace "n:S-1-5-32-545;p:full;s:y" - This will set full rights to the group users. The SID S-1-5-32-545 is used instead of the name users

(note: maindir is the folder name like c:\ProgramData\yourcompany name\appname)

·Delete setacl.exe

·Problems to register a DLL in Vista / Windows 7 / Windows 8

Check comments how to register a DLL and which problems may occur

Installation of the DLL

The folder ..\files for distribution contains all Licence Protector DLLs. There is an folder with a compressed version and uncompressed version. We recommend using the uncompressed version because it works with all compilers and operating systems.

Licence Protector offers different ways to register the DLL / COM exe:

·Using LPRegister410.exe - it registers the DLL / COM exe without needing administrator rights

·Do not register the DLL if you use a manifest file. Administrator rights are not needed. Manifest files are not supported for the COM exe

·Register the DLL / COM exe with the windows tool regsvr32.exe or the inbuilt option of an installer. This requires administrator rights

You should copy the licprotector410.dll to the \windows\system32 folder although it could also be installed in your program directory. As each DLL version of Licence Protector has an own ProgID, multiple different versions can be installed on the same machine.

Best Practice

·If your installer needs administrator rights, use the inbuilt option of the installer or regsvr32.exe. To use regsvr32.exe add a shell execute command in the installer which invokes regsvr32.exe
- Register the DLL: Execute "c:\windows\system32\regsvr32.exe" " ....\pathname\LicProtector410.dll" (note: this requires administrator rights)
- Register the COM exe: LicProtector410.exe /regserver (note: this does not require administrator rights)

·If your installer does not need administrator rights then use LPRegister410.exe

·If you do not have an installer and you only copy files to a folder, use a manifest file

·If you just want to register the DLL manually on one system, use LPRegister410.exe. Using regsvr32.exe would work as follows:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run regsvr32 "....\pathname\LicProtector410.dll” in the command window

If multiple users on one computer or services use the COM exe, then you have to register it using administration rights and the command: LicProtector410.exe /regserver /NOREDIRECT

Vista / Windows 7 / Windows 8 and MSI files
Some installers generate a message HRESULT -2147220472 or -2147023898. This is due to missing rights during installation. Use LPRegister410.exe to register the DLL and not the installer built in dll register function.

·Sign your installer file to avoid error messages after download or after starting the installer see details
How to sign installation file

Sign your Installer file

Although you could deliver an unsigned installer file, we recommend adding your digital signature. You can buy a code-signing certificate from one of the accredited providers like www.verisign.com, www.thawte or www.comodo.com.

With the digital signed installer file your users do not get warning messages when they download the file or launch the application.

First check your installation tool if it supports to add a digital signature. As installers often add their own CRC checks a digital signature would destroy the installer file. Therefore the installer tool has to add the signature first before the CRC check is added.

Vista / Windows 7 / Windows 8 64bit

Licence Protector is a 32bit DLL. It runs on 64bit operating systems like Vista / Windows 7 / Windows 8 64bit or Windows 2008 / 2012 Server 64bit as long as the main application is compiled for 32bit.

If you need a 64bit compile or you compile a .NET application for any CPU or for .NET4, you have to use the COM exe version of Licence Protector - LicProtector410.EXE. It is a DCOM component which can be used by a wide range of compilers. It can be found in the folder The folder Licence Protector\4.1\files for distribution\COM exe

The COM EXE supports 32bit and 64bit operating systems as well as 32bit and 64bit compiles.

There is no need to change the source code (only to change the ProgID) to switch from a 32bit compile to a 64bit compile. Even applications, compiled with 32bit and 64bit within a network can access the same license file.

Depending on the development tool you add the COM exe (like a DLL) with a command like

Private objlic As Object

Set objlic = CreateObject("LicProtector.LicProtectorEXE410")

The LicProtector410.exe in version 4.1 has the ProgID " LicProtector.LicProtectorEXE410" This allows using an older LicProtector.exe in combination with older versions of LicProtector.exe on the same system. The ProgID changes with every main release. The file name of the exe is different from the ProgID (file name: LicProtector410.exe - ProgID: LicProtectorEXE410).

·As the COM exe works with 32bit AND 64bit compiles, you can exclusively use the LicProtector410.EXE instead of the DLL.

·To use the COM exe (64bit) for testing with the License Tester, select EXE right to the Licence Protector version number.

Registration

·The COM exe has to be registered with LicProtector410.EXE /regserver. If the user does not have admin credentials, it will register for this user only. There are some situations where you need to register on machine level (e.g. your application is a service). Then use LicProtector410.EXE /regserver /NOREDIRECT. This requires administrator rights

· Alternatively you can use the Licence Protector registration tool to register without admin rights

Permissions

Some applications may require special permissions for the COM exe (e.g. if they are a service). You can change the permission:

·From the Start menu, click Run and type MMC -32

·Then add the Component Services snap-in from there (File / Add Snap-in)

·In Component Services, click Console root, expand Component Services, expand Computers, and then click My Computer

·Expand DCOM Config and search for LicProtector Obj

·Right click - select properties and then the Security TAB

·Add the users from your service

Errors

A compile setting for any CPU will generate an error 80040154 at runtime. Either use the COM exe (recommended) or change your compile settings to compile for compiled for x86 CPU.

Details

Find below how to change the settings for Visual Basic 2008. Other .NET compilers have a similar option.

To change the platform open the project properties and click under the submenu "Compile" on the button "Advanced Compile Options...":

Click to enlarge

Advanced Compile Options

Now you can change Target CPU from "Any CPU" to "x86".

Filenames in Vista / Windows 7 / Windows 8

A file name, which has words like setup or install in the name, would have as a result, that the file needs administration rights. In Vista / Windows 7 / Windows 8, the UAC (user account control) would pop-up. For more details about EXE names and Vista read this blog.


License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with 3 different key generators (depending on the Licence Protector editions). Information about all generators.

Manual license generation - License Generator

· Create a license file

· Create an Activation Key

· USB Stick protection

· Additional Settings

· Special Functions within the License Generator

· Licence Protector license information

See also
Activate License Protector
Create license file for EasyGo
Important Activation Keys with EasyGo


Start Application - Main Screen
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start License Generator

License Generator is either started automatically with the Operation System or you start it in the program group Licence Protector with the ICON [image] .

The last project file is loaded automatically and the main screen of License Generator appears.

 | Name of the Project File (Extension XML) and the name of the license file (Extension LIC)
Title Bar Ribbon Toolbar Additional information Selected Modules |

You can use shortcuts to access the menu by pressing the key ALT + Shortcut. Which key you have to press is displayed by an underlined character (press key ALT, then the character is underlined).

A orange frame indicates that a option is selected [image] .

File Tab

This button replaces the file menu option button of earlier releases. The Licence Protector Button should only blink when you have not clicked the button to view the commands. The blinking is a "look at me/click here" feature, because many people think that the button looks like a decorative logo, rather than a button to click to see commands. If you click the Licence Protector Button one time, it should stop blinking.

Open Project File | Opens project file. Also displays a recent project file list
Open license File | Opens a license file. Also displays a recent license file list
New license File | Create new license file
Save | Saves the license file
Save As | Saves the license file with another name
Create a project | Create a new project
Copy a project | Copy an existing project
Exit | Exits License Generator

Start Tab

Click on this tab to access the main functions of the generator.

Toggle between License Main page [image] and Additional Settings page

Toggle between Module View [image] and Data Area View

Keys Tab

Click on this tab to access key generation functions

Tamper Detection | Create Keys to enable or disable Tamper Detection
Copy Protection On | Create a key to enable copy protection
Copy Protection Off | Create a key to disable copy protection
Serial Number | Create a Serial Number key
License validation on / off | Enable or disable license verification
Unlock | Create an Unlock Key
Unlock without Copy Protection | Create an Unlock Key without copy protection
Additional Licenses | Create a key to change license information
Description On / Off | Turn on and off additional text description for a key. After each key an additional text description is displayed
Analyze Key | Analyze an Activation Key and get all the settings, the Activation Key will change
Save Key List | Save the generated Activation Keys in a file

Activation Server Tab

Configure and upload projects to the Activation Server 4

Upload license file | Type in the project master key (password). This is required only if the project encryption needs a master key
Settings | Configure basic settings for product activation
Configure own server | Configure your own Activation Server 4
Configure hosting server | Configure hosting server
Administration | Connect to the Web Administration Interface
Upload project configuration | Upload your project to the Activation Server 4

Extras Tab

Click on this tab to access special functions like USB protection.

Logging | Enable or disable Logging. Select the folder for the log files.
Language | elect a language for the License Generator. The program has to be restarted to have the changes take effect
Confirmation prompt | In the case that some questions have been deactivated, using this function they can be switched on again
USB Protection on | Turn on copy protection on an USB flash drive. The license file must already be on the USB flash drive
USB Protection off | Turn off copy protection on an USB flash drive. The license file must already be on the USB flash drive
Backup license file | Backup your license file on the Activation Server 4
Restore license file | Restore your license file on the <%WAS%

Help Tab

Click on this tab to access multiple help options

Online Help | Display the Online Help and Software Development Kit
Quick Introduction Help | Display the Help and Welcome Screen during program start. This screen provides you with links to the most popular FAQs to get started and link to the Online Knowledge Base
Updates | Checks if a new update is available and downloads it
Licence Protector on the Web | Opens the Licence Protector Home page
Buy Licence Protector | Order Licence Protector online and instantly get a Serial Number
About | About Licence Protector and release information
License Viewer | Display your license information and enter Activation Keys

Quick Access toolbar

Often used commands can be accessed through a toolbar with small icons right to the Licence Protector Button. Right now, the toolbar can not be configured and comes with predefined icons.


Open Project File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To open a project file, select the option Open Project File [image] in the TAB File.

All modules and their properties are stored in the project file. You need a project file for each software application you want to protect. .

All modules set to Yes in the node LoadAsDefault will be loaded when the project is loaded.

If the project file is invalid no modules will be shown and the icon bar will be disabled.

See also
Create new License File
Open License File
Save License File


License Main
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Click on License Main [image] to access the main license information

 | Short Description | Note
Project name | Name of the project | The project name is defined in the project file. Is the project name not defined in the project file, then the file name of the project file is used. The project name can not be modified in the Generator.
Version | Version number of the application | Information is sent to the Activation Server 4. The field is defined in the project file with AppVersion. See: How can I test a release number?
Customer | Name or company name of the customer | If you create a customer specific license file, then type in the customer name. If the file is a generic file for the demo / evaluation version, then use as customer name Evaluation Version
Copy Protection | None, Volume ID or other copy protection option | For details see chapter Copy Protection.
Installation Code | Installation Code of the customer, which has to be entered when Copy Protection is selected. | The Installation Code is stored in the license file. The license file can be used only on that customer system from which the Installation Code originates
Manufacturer | Normally the name of your company is displayed here. When more manufactures are defined in the project file, you can select more companies with a click on | You can select different companies when you distribute your software as an OEM Software. This is defined in the project file
Reseller | Name of a reseller | Information is sent to the Activation Server 4
Values which cannot be changed
Security Level | Security Level of the license file (Basic / Advanced) | Security Level. Can not be changed within the Generator.
license file ID | Unique number of a license file, which is assigned consecutively | The last assigned number is stored in the field NextLicFileKey in the project file. This information is displayed after saving the license file
license file version | Version of the license file | Internal version number. Currently 2xxx. This information is displayed after saving the license file
license file date | Date and time when the license file was created | This information is displayed after saving the license file


Create new License File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After opening the project file, you can create a new license file. Select the icon [image] (in the quick access toolbar) or click on the TAB File, then select [image] .

The default values from the project file are loaded.

See also
Open Project File
Open License File
Save License File


Choose Module/Licence Types
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can add any modules you like to a license file. When you open a project all modules will be loaded having YES specified for the definition LoadAsDefault in the project file.

There are different kind of modules - see details: Module Type

Each module can have additional properties:

Valid until day - the module can be used until this expiry date

Valid number of days - the module can be used for the number of days after installation

Demo version - the module is a Demo version

TAG value - can be used for to check if software was patched / cracked or to store any ASCII value

Activation - defines whether the license has to be activated or not

You can remove a module with the button [image] and add a module with [image] . The add module button is deactivated if all modules are assigned. You can also click on the module description to select another module. To define, if a module is visible by default in the License Generator, use the definition LoadAsDefault in the project template.

Click here to change the module


Save License File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After editing the Main Data of a module and selecting the modules, you can create the license file. Select the icon [image] (in the quick access toolbar) or click on the TAB File, then select [image] (to save with the default name) or [image] (Save As) to save with a different name.

The file name receives the extension LIC. The license file name, defined in the project file as default file name, is suggested.

The license file ID is generated (unique number), the license file version and the license file date (creation date) is displayed. The name of the license file is shown in the title bar.


Open License File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To open a license file, select the option Open License File [image] in the TAB File. The name of the license file (extension .LIC) is displayed in the title bar.

You can make any modifications after storing and reloading a license file. Save the license file with the icon [image] .

When Activation Keys are stored in the license file, all the keys are listed in the screen Activation Key.

Before you open the license file, you have to load the project file.

See also
Open Project File
Create new License File
Save License File


TAB Start
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This is the main screen to change license information.

The icons highlighted with orange lines indicate that this option is selected. You can toggle between 2 options:

·Toggle between License Main screen [image] and Additional Settings

·Toggle between Module View [image] and Data Area View


Additional Settings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select Additional Settings in the main screen.

You can switch to a detail page, where you can configure a lot of additional options for the license file. The detail page is designed only for experienced users to modify default settings which effect security behaviour and Activation Server 4 features.

· Activation Server Settings

· Concurrent User Settings

· Security Settings

Only change these settings after consulting development. Changing these values may have a major influence on application.

You can switch back to the main screen by selecting License Main.


Activation Server Settings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

URL to Web Activation Service

Link to the Activation Server 4. If you are using the hosting service you get the link from Mirage.

Template setting: <WebServiceURL>

Allow changing of URL to Activation Server 4

The user can modify the URL to the Activation Server 4 and proxy server settings within the start start screen (see also ShowStartPage). A link: Proxy Settings is added in the dialog.

Template setting: <AllowChangeWASURL>

License Verification Mode

The verification mode allows you to regularly check a license online

·Off - no checks are performed

·Ongoing Verification - regular verification. The interval is defined on the Activation Server 4

·License Locked - Status set by Activation Server 4 to lock a license

·Verification Deactivated - Status set by Activation Server 4

Template setting: <LicenceVerification>

For more details see the chapter: Regular Online checks

End of License Verification

Specifies the date when the verification ends. Check interval is configured on the Activation Server 4

Template setting: <EndVerification>

Next Online License Check

Specifies the date when the next check is due. Calculated by the Activation Server 4


Concurrent User Settings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can change concurrent user settings for one license file.

· Concurrent User Level - switch between Heartbeat and Light

·Define the interval for heartbeat checks - see command CheckInterval. The value -1 activates the automatic mode which is recommended to use

·Define percentage for interval - see command DiffPct

Only change these settings after consulting development. The default values will work in most situations and changing the value will change the behaviour of the concurrent user testing.

If you don't specify the values in the project template, then the default values are used. Otherwise you can define the values in the project template using

·<ConcurrentUserLevel>

·<CheckInterval>

·<DefaultDiffPct>


Security Settings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Tamper Detection

·Check to enable basic tamper detection

Add additional security by setting the Mode of Manipulation Detection

·Off - only uses basic tamper detection if checked

·Automatic - uses automated mode - recommended

·Manual - uses manual mode

Other Security Settings

·Allow SetVal function - only deselect, if you never change a license file via DLL calls - see Anti Hacker Strategies

Allow SetVal option

·Internal marking of license file - TAG value of the license file. Should only be changed if your application supports this feature


Module View
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Toggle between Module View [image] and Data Area View [image]. The module view displays a list of all modules.

You can remove a module with the button [image] and add a module with [image]. The add module button is deactivated if all modules are assigned. You can also click on the module description to select another module. To define, if a module is visible by default in the License Generator, use the definition LoadAsDefault in the project template.


Data Area - store data in license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select Data Area [image] in the main screen. It allows to edit and modify data, which is stored in the data area of the license file. For full details see chapter Store data in the license file.

Select Add to add a new data entry or highlight an existing entry to Edit [image] or Remove [image] it.

Either store the values invisible in the file or select, if the data should be visible in the License Viewer.

The modification is written back in the license file when you press save and not when you close this window.

This feature is only available in the Professional Edition.


Activation Key - Expert Mode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The expert mode allows you to create Activation Keys with more options like using the Additional Keys screen. Only use this mode if you really need to use the special settings provided with the expert mode.

You can open the Expert Mode key generation by clicking on the .... in the column Activation Key within the module list.

This will open the following screen


Information about the Activation Key

Navigation: License Generator > TAB Start > Activation Key - Expert Mode:

Activation Key - Intro
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Key

Using an Activation Key you can send your users a complete license file or activate/deactivate their modules giving you the possibility to change a license per

Phone

Fax

Email

SMS

'Snail' Mail

The users register the Activation Key via the License Viewer. It is a precondition that the users must have a valid license file before they can apply an Activation Key.

You can change multiple properties of a module or only one (e.g. add 3 users or deactivate the demo version). All properties can be changed except for:

Name of the manufacturer

Name of the customer

Name of the module

Changing a module type – e.g. from counter to user

Adding a new module

Deleting a module

You cannot add a new module to an already existing license file with an Activation Key. This is only possible with a DLL method.

The Activation Keys of Licence Protector are secure:

They can only be used once for a license file (a complete history of all Activation Keys is stored in the license file and can be displayed with the License Viewer)

If a license file uses the Installation Code (e.g. Volume ID) as Copy Protection, the Installation Code will be included in the Activation Key. This key can be used only with that specific license file

You can combine the Activation Key with the license file ID. This key can be used only with that specific license file

If you don’t combine the Activation Key with the installation Id or the license ID, it can be used with every license file.

This mechanism ensures that an Activation Key (e.g. adding 3 users) can be used only once AND only with one specific license file.

If you choose the option Online validation required, the Activation Key is sent to the Activation Server, before it can be applied. The key is stored there and it is ensured that the Activation Key can be used only once.

Note: The user must have an Internet connection to apply the key.

All Activation Keys are listed for each module


Create Activation Key

Navigation: License Generator > TAB Start > Activation Key - Expert Mode:

Activation Key - Create a Key
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Create Activation Key

An Activation Key stores the information for just one module. If more modules have to be changed, you have to create a corresponding number of Activation Keys.

Within the module line Double-Click in the field Activation Key on the right. A window will open for creating one or more keys.

Use the Button New to change into the entry mode where you can:

Increase or decrease the number of licenses of a module or set the license to an absolute value

Change the status of the demo version (Unchanged, No = Full Version, Yes = Demo version)

Set a new expiry date (not possible in the Demo version of Licence Protector)

Increase or decrease the number of days that a license is valid (not possible in the Demo version of Licence Protector)

Define, if an Online validation is required

Define if the Activation Key can be used multiple times on one machine (unlimited installation)

Change the status of the Activation

Press the Button Generate to generate and display the Activation Key.

The Activation Key is automatically copied to the clipboard, e.g. to e-mail the key. You can copy a selected key into the Clipboard using the button Clipboard.

Choose the option: use advanced description and the button Clipboard, then additional information information to clarify letters which could be misinterpreted (like I and 1 or O and 0) is used.

Example:

GPwau-18PD6-4DaDj-1WfAl-xMhCO-4iBCJ

In block 4 at position 5 there is the small letter l

In block 5 at position 5 there is the capital letter O

If an Activation Key is generated while a license file is opened, then the Activation Key is stored additionally in the license file. There is a security request and the storage of the key can alternatively be prevented.

If you have a license file loaded, the button: Save is available. This would save the Activation Key directly in the license file. This is only required if you want to save a copy of this key in a customer file.


Change number of Licences

Navigation: License Generator > TAB Start > Activation Key - Expert Mode > Create Activation Key:

Activation Key - number licenses
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Change Number of licenses

After pressing the button New you can change the properties of a module.

You can increase and decrease the number of licenses of a module. Use the arrow keys - up to increase or down to decrease the number of licenses.

Modify number of licenses

The range of values is from -23327 to 23328. The range of values is smaller then during the creation of a license file, because the length of the Activation Key would be too huge.

If you check the option absolute value, the license in the license file is set exactly to this value. Otherwise the value in the licensefile is increased or decreased by the new value.

If the module is a Yes/No module, the status can be changed

·Unchanged - module is not changed

·No - module is set to No

·Yes - module is set to Yes

Note! If you apply a negative number of licenses and there are - after applying the Activation Key - less licenses then users registered in the license file, then all users are deleted in the license file.

Example: The license file has 6 user licenses and 6 users are registered in the license file. An Activation Key with -2 user licenses is applied. Then all active (not the deactivated) users are deleted. After that, 4 users can be registered again.


Change status of Demo version

Navigation: License Generator > TAB Start > Activation Key - Expert Mode > Create Activation Key:

Activation Key - Demoversion
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Change Status of the Demo Version

After pressing the button New you can change the properties of a module.

The property Demo version can be changed via the Activation Key as follows:

unchanged - the status in the license file is not changed

Yes - the license is set to Demo version

No - the license is not set to Demo version (Full version)

Note! If the status of the Demo version is changed to YES/NO, then the expiry date is deleted (number of days and expiry date).


Change number of days / valid until

Navigation: License Generator > TAB Start > Activation Key - Expert Mode > Create Activation Key:

Activation Key - Days
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Change Number of Days / Expiry Date

After pressing the button New you can change the properties of a module.

You can either set a new expiry date or change the number of days or change both. To modify the date you have to deselect the check box Date unchanged.

Use the arrow keys - up to increase or down to decrease the number of days.

Deselect check box

If you check the option absolute value, then the number of days in the license file is exactly set to this value. Otherwise the value in the license file is increased or decreased with the new value.

To delete the expiry date, you have to change the status of the demo version.

Note

If you add a specific number of days with an Activation Key and the module has already expired, then the number of days is added to today’s date.

Example:

·Module expired at 01/25/2007

·Today’s date is 02/02/2007

·The key adds 2 days to the module

The new expiry date is set to 02/04/2007 and not to 01/27/2007

While using a demo version of Licence Protector you can not change the date.


Activation Status
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The activation status of a module can be changed using an Activation Key.

unchanged - the status in the license file is not changed

none - the module does not require a Web Activation

required - the module has to be activated

done - the module is set to the status activated (same status like after online Web Activation)

This status is used by EasyGo

· Serial Number - needs status set to required


Multiple Usage of an Activation Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If an Activation Key should be used on the same machine multiple times, select the option: Unlimited installation.

Details, which configuration settings are necessary on the Web Activation Server and how you configure EasyGo to allow a reinstallation, can be found in the chapter Allow Reinstallation / multiple usage of an Activation Key.


Protection with the Licence ID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can bind an Activation Key to a license File ID (unique number) of a license file. The Activation Key can then be used solely with this specific license file.

If the license File ID = 0, the Activation Key can be used with any license file. It is like a general key.

You can retrieve the Installation Code of the customer with the License Viewer.


Protection with the Installation Code
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If Copy Protection = None is selected, the key can be used on any machine.

You can bind an Activation Key to the Installation Code (Copy Protection) of a license file. The Activation Key can then be used only on the PC / Server when the hardware ID in the key matches the hardware ID used for copy protection in the license file.

You can retrieve the Installation Code from the customer with the License Viewer.

You have to use the installation code which is marked with


Protection via Online Validation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you choose the option Online validation required, the workflow for applying a key is as follows:

·The user needs an Internet connection to apply a key

·The key is transferred to the Activation server and is stored in the database

·If the key was already used, the key can not be applied

·If the key was already used on the same machine and reinstallation is allowed, then the key can be applied

Using this option you can create Activation Keys without knowing the license file ID or the installation code from the user and it is ensured that the key can only be used once.

Activation Screen which pops-up when the user types in the key

Note

·You can allow using the Activation Key multiple times on different machines by changing the maximum key usage on the Activation Server Administration Interface - see How can I change how often a key / ID can be used?

·You can allow to using the Activation Key multiple times on the same machine - see chapter Allow Reinstallation / multiple usage of an Activation Key

This feature requires the Activation Server 4


TAB - File
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can open a project, create a new project, copy a project or just select a project from the list of recently used projects.


Create a new Project
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the option Create Project in the TAB File in the start screen to create a new project.

Project Name

This is an internal name. The project name must not contain any special characters like . &%$§" , space or umlauts like äöü. You can later assign a full product name on the Activation Server 4 within the product configuration.

Project Secure Key

The Project Secure Key should be a string which includes upper and lower case letters and numbers. It may not contain any special characters like äöü.

The project secure key defines the encryption of the Serial Number and additional Activation Keys. It has to be unique to ensure that a Serial Number form product A can never be used on product B.

Press the Button: Generate Project Keys. The generation of the keys may take a while depending on the machine speed. Save the keys and the project file by pressing the button OK and selecting a directory. The project file is saved as projectname.xml. You will not need this project file because you already have made you own.

The project template includes the project specific encryption keys. All encryption keys are saved into a RTF file on the selected folder. You should copy this file to a save place. Make sure not to lose this information and protect it against unauthorized access. There is no way to restore a lost key.

·You can change project options or modules / features by editing the project template

·After creating a new project or changing the project template, you have to select update the project on the Activation Server again (only necessary if the Activation Server 4 is used)

Change existing template

If you already have an existing template and you only want to change the encryption then copy the Write Key, Read Key and Project Secure Key from the RTF file into your project template. The Read Key also has to be replaced in the source code of the application in the PrepareAndCheck command.

You could also copy an existing project with all settings.

See also
Security considerations


Copy a Project
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can copy an existing project with all settings. Select Copy Project in the TAB File.

Project Name

This is an internal name. This is an internal name. The project name must not contain any special characters like . &%$§" , space or umlauts like äöü. You can later assign a full product name on the Activation Server 4 within the product configuration.

Version

Version number of your application

Project requires new Read / Write key

It is recommended to change the encryption of the license file (Read/Write key) every time you built a new project. Check the option: Use new encryption for the project to be copied

Project requires new Serial Numbers

If the new project requires new Serial Numbers for the product activation, change the Project Secure Key by clicking on the Generate button.

The result is identical like using the option: Create a new Project but all settings of the master project are copied and you don't have to do all the settings again

Name of license file

Default for the license file name

URL to the activation Server

Default for the URL to the activation server. Should only be changed if you are using multiple Activation Servers

Reseller

Default reseller name

·You can change project options or modules / features by editing the project template

·After creating a new project or changing the project template, you have to select update the project on the Activation Server again (only necessary if the Activation Server 4 is used)


TAB - Keys
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The License Generator allows to create different type of Activation Keys

·Activation Keys for EasyGo like Serial Number, Unlock Keys or keys for additional modules. These keys have predefined settings

· Activation Keys - Expert Mode where all settings can be changed

To create keys with other generators (e.g. Browser based) see chapter: Create Keys


License Verification
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If a regular online check is used, you can disable or enable the online check using the license verification key.

Typically the regular online validation is done using the main module. Ensure that you select the correct module.

Set the license verification state:

·off = disables the regular online verification

·ongoing verification = enables the regular online verification

·license locked = locks the license

To ensure, that the key can only be used once and that you can check, if the key was applied, use the option: online validation required.


Suspend Date Lock

Navigation: License Generator > TAB - Keys:

Activation Key - Unlock Date
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Suspend Date Lock

Licence Protector detects, if a user manipulates the date. There can be a situation (if the user sets the date into the future and then back again), when a program start is not possible anymore, because Licence Protector informs your application about the date manipulation.

With each Activation Key the Check Date function is set back to the current date. Just send the user an activation key with a new expiry date to suspend the date lock.

Your application must provide a possibility to type in an Activation Key, even when the application does not start.


Reset Application
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the option Tamper Detection is used and the customer restores a backup or tries to manipulate the license, the application will not start. There are several ways to reset the application

Sending an Reset Key

This is the recommended activation. Within the License Generator, select the TAB Keys, Tamper Detection.

·Select Deactivating Tamper Detection if you want to disable Tamper Detection for a product was already installed on the end users computer

·Select Activating Tamper Detection if you want to activate Tamper Detection for a product was already installed on the end users computer

·Select either Resetting Tamper Detection on a single user or network system to just reset the lock. The user can then start the application again but Tamper Protection is still active

Use Online validation required to ensure, that the key cannot be used on multiple PCs

Uncheck Unlimited installation to ensure, that the key cannot be used twice on the same license file

Within a network, the key has to reset all Computers. Therefore a time frame has to by defined (Option: Number of days within which a work station has to use the application to reset tamper detection). Within that time frame each computer has to start the application to remove the lock. That means that during these days the Tamper Detection functionality is virtually deactivated.

You should select the value for number of days large enough to allow all computers to start the application within the time frame to reset the lock. Tell your customer to start the application on all computers.

Sending out a new license file

One method is to create a new license file. That license file will start with Run Number 0 and has no locally stored Run Number so the standard start-up functionality is used.

Using DLL commands

You can use DLL commands to rest the Run Number.

· ResetLocalRunNo

· ResetGlobalRunNo

The command PrepareForce would allow to open a license file and ignore the error.


TAB - Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Configure here the settings for the product activation, configure your Activation Server 4 and access the Web Administration Interface.

The Activation Server 4 is the central point for administration of licenses - create keys, lock licenses, change activations or generate reports. It ensures that each license can be registered only once. Every transaction is logged to a database.

Optionally, keys can be transmitted to the activation server before they are applied to the license file. It is checked, whether the key was already used or not. This is to ensure that the key cannot be passed on and used multiple times.

Hosting

The Activation Server 4 is provided via a hosting model. Mirage provides installation and maintenance of the server. The hosting has to be ordered separately and there is a fee per activation. Order Hosting.

Running an own Activation Server

You can run your own server without any fee per activation.

Click here for system requirements of the Activation Server 4

See also

Online Activation Workflow
Administration Interface
Upload license file
Own Server - Settings
Hosting - Settings
Upload project configuration


Upload license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This option allows to upload a license file to the Activation Server 4.

For details how to upload and download license file see chapter: License File upload/download

To upload a license file, fill in the customer details. The following settings are important.

·Type in the customer name

·Copy Protection = none

·Set all modules to the values the customer has bought

·Define time limitations only if the full version should expire after x days or if a module should expire (example below - update

For the main module set

·Status of Activation to none

Save the license file on a temporary folder (this step is mandatory).

Select the TAB Activation Server and click on the Upload Server option.

This opens a new window, where you can fill out additional license file details.

·The field Encryption Code is like a password. It ensure that nobody else with knowledge of your Activation Server 4 structure can download a file. We strongly recommend using it

·File description is the name of the license file on the Activation Server 4. If this file description is empty, the name is default.

·You have to use the module ID of the main module.

·The SerialNo/ID must just be a unique ID like order number, customer number or a Serial Number and is mandatory. A Serial Number just ensures, that the ID is unique but has no other purpose. It does not change the license file settings, e.g. modify number of network users. The users gets this ID to identify his license on the server

·The Send Customer Info creates a record in the customer table and assigns the address to this license


Web Activation Server

Navigation: License Generator > TAB - Activation Server:

Settings
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Primary / Alternative Harware ID

The primary hardware ID is used as the main criteria to activate copy protection. Only if this criteria is not retrievable the Alternative Hardware ID is used.

For single user installations or CD distribution, the Windows ID (13) is recommended. For network installations use installation code 5 (Volume ID + UNC Path) or 6 (MAC Address + UNC Path).

If you offer a USB flash drive installation, the Primary Hardware ID must be 11 (USB flash drive).

Theses values are automatically assigned to each new project.

How often can a Serial Number be used?

It can be defined, how often a Serial Number can be used. The default value is 1. If you want to allow, that the product is installed e.g on 3 different PC's, then change here the value to 3.

Prevent Reinstallation

Typically a customer can uninstall a product and reinstall it on the same computer. The Serial Number is accepted again. Some workflows eg. a time limited full version require to prevent a reinstallation.

After creating a new project or changing the project template, you have to select update the project on the Activation Server again (only necessary if the Activation Server 4 is used)

You can customize the project settings in more detail on the Activation Server 4 within the product configuration.


Own Server - configuration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you run the Activation Server 4 on your own computer, you can also use the automatic uploading of the configuration files . This requires a special configuration of the server. If the configuration is not possible, you can always manually upload the configuration files.

To use an own server check: I use my own server

Step 1 - Link to the administration interface of the Activation Server 4

Type in the link to open the Web Administration Interface

https://www.mydomain.com/lpweb

Step 2 - Configure the settings for the FTP access

For an automatic upload of your Licence Protector configuration files to the Activation Server 4 you have to provide an FTP access. Install an FTP-Server with access on FTP-port 21. Provide an FTP-account which has full read/write access to the Activation Server 4 installation including all subfolders (like ..\bin, \alg).

Now configure the FTP account in the Licence Protector Generator.

·FTP-Server address: name of the FTP Server like registerserver.net

·FTP Account: FTP account user name

·FTP Password: password - always use a password with this FTP account (anonymous login is not supported)

·Installation path - path where the Activation Server 4 was installed

·PATH on FTP Server - path to the Activation Server 4 server directory, relative to the home directory

Example:

The installation path is on f:\wwwroot\activation-server4. The FTP user's home directory is f:\wwwroot .

The installation path would be f:\wwwroot\activation-server4. As the home directory of the FTP user is already f:\wwwroot, the relative path to specify would be: activation-server4.

Click here for system requirements of the Activation Server 4


Hosting - configuration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Type in your Hosting Number and Hosting password as well. Deleting the Hosting Number will reset the project settings to values for the Test Server. The hosting details are provided after ordering the hosting service.

If you got the hosting information before the release of version 4 then you use the FTP data without the string lp

Example:

FTP Username: lp9939159 -> Hosting ID = 9939159

FTP Password: 1Q7_thI% -> Hosting Password = 1Q7_thI%


Administration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 comes with an browser-based Web administration interface. You can monitor each activation, allow reactivation or detect fraudulent usage of Activation Keys.

Have a look at the administration interface on the demo Web Activation Server or browse the tutorial of the Web Activation Server.

The user name is demo-en, the password is protector. To get a German user interface, use user name: demo-de and password: protector.


Update Product on the Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 needs information about your project. If this information is missing, a Serial Number is not accepted.

Only upload the product information once. You can customize the project settings in more detail on the Activation Server 4 within the product configuration. Once you have customized options, you should never again upload the project as all settings would be overwritten

·This option is only available if the login data to the Activation Server is configured - see screen Hosting Settings or Own Server Settings

·If the uploading fails or the system hangs, see Error during uploading files

Test Server

Your projects and test activations are deleted after 2 days on the pre-configured test Activation Server.

See also
Error during uploading files
Manually upload Files


Error during uploading files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If an error occurs during uploading of the files, check:

·Check your hosting ID and your password - see screen Hosting Settings or Own Server Settings

·Do you have a firewall enabled? - Disable the firewall and try again

·Do you have an antivirus software installed? - Disable the antivirus software and try again

·If you are using an own server check your FTP server settings

If the upload still generates an error, upload the files manually - see chapter Manually Upload Files.


Manually upload Files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the automatic upload is not working (probably because firewall limitations) you can manually upload your files to the Activation Server 4.

You have to copy your files to the Activation Server 4 with an FTP software (using the File Explorer will not work).

Using the popular FTP Tool FileZilla Client (http://filezilla-project.org/) the settings would be as follows:

User: This is lp+hosing number - e.g. if hosting number is 9999999 then the user would be: lp9999999

Password: Your hosting password

It is important to set the transfer mode to Active

After login you will see a directory structure on the Activation Server 4 similar to this one:

Copy files from local PC to the Activation Server 4

On your local PC, select the folder where the project file is stored. There is a subfolder with the name: project Name_ActivationServer/Web Activation Server - demo-easygo-40_ActivationServer/Web Activation Server

Select the folder Web Activation Server. It includes 2 sub folders.

·Select the folder ..alg and copy the files to the same directory \alg on the Activation Server 4

·Select the folder ..pconfig and copy the files to the same directory \pconfig on the Activation Server 4


TAB - Extras

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find here configuration options as well as special options like USB protection.

· Logging

· Choose Language

· Confirmation Prompt

· USB flash drive Protection

· Backup / Restore your license


Choose Language
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can change the language of the License Generator application within the TAB Extras, Languages


Confirmation prompt
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Some actions pop-up a message to confirm the action. You can suppress this messages by checking the option: Keep the answer in mind and don't have it displayed again. The confirmation screen will then never appear.

To enable the confirmation screen again, select in the License Generator TAB, Extras, [image] Turn on confirmation prompt.

If the confirmation prompt is active, then this option is disabled.


Logging
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Extras, Logging to enable or disable a log file. This can be used for error tracking.

In case there is an error within the Licence Protector application, Mirage support may advise you to turn on an error log.

Click on the arrow and select a folder to save the log files with Select Path for Log files.

The button is a toggle which is turned on or off

description is on

description is off

The log file can be activated in your application within the License Viewer, button option.


USB-stick Protection

Navigation: License Generator > TAB - Extras :

Activate / Deactivate copy protection on USB flash drive
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

For overall considerations using the USB flash drive protection see chapter Using an USB flash drive as a Dongle replacement.

To deliver a USB flash drive with a ready to go license, there are only a few steps necessary.

Create license file

·Open the License Generator and load the project template

·Configure all modules the customer has bought

·The license should have no time limitation or demo version status. You could add a time limitation, if the software should expire after x days or on a predefined expiry date

·Activation status must be done if you use EasyGo

·Type in the customer name and save the license file on the USB flash drive

Click to enlarge

Configuration settings for USB license

Limit usage

The customer can use the license always only on the computer, where the USB flash drive is attached. The limitation by PC / user is an additional configuration setting to limit the usage.

·use a module from type computer/PC - this limits the usage to the defined number of computers (recommended option). To define an unlimited usage, just configure a license with 9999 computers

·use a module from type user- this limits the usage to the defined number of users (USB flash drive can be used only on one PC)

·use a module from type Yes/No - the USB flash drive can be used on any number of computers by an unlimited number of users

The computer license type uses the hostname to count the number of computers. As a hostname can be changed, you could use the hardware ID 13 (Windows ID) instead of the hostname or a combination of both.

·Retrieve hardware ID 13 using GetInstCode(13)

·In the command Validate or PrepareAndCheck use the hardware ID 13 as replacement for the hostname (Name = hardware ID13, UseWindowsUser = false)

·As now only a 8 digit number is displayed in the License Viewer, you could combine the hardware ID13 with the hostname - GetLPComputername - the result in the license file would e.g. be: 411B9C8E (My Computer)

Activate protection on USB flash drive

First You have to load the correct project template for the file you want to protect. Then you can add the USB protection to this file.

In the License Generator, select the Tab Extras, then USB Protection on.

This opens a dialog, where you can select the license file on the USB flash drive. The copy protection is then activated.

If the USB flash drive does not support this option, an error message is displayed:

There is no valid instcode for file filename.lic

You have to use another USB flash drive.

The copy protection can be removed from the USB flash drive. Select the menu Tab Extras, then USB Protection off This opens a dialog, where you can select the license file on the USB flash drive. The copy protection is then removed.

The option: Allow SetVal function must be checked. Otherwise you get a write protection error.

SetVal configuration - screen additional settings

SetVal configuration - screen additional settings

Automated process for large quantities

If you need large quantities of USB flash drives with a license file already activated, you can use the service of the company OEM marketing - www.oem.de. They are specialized in CD and USB duplication and they have a special license from us to add the USB flash drive protection in a batch process. You have to send them a generic license file and the project template.

This feature is only available in the Professional Edition.


Backup / Restore your license
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows you to make an online backup of your license and share it with other PCs.

For details see: License usage and installation on multiple PCs


TAB - Help

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with extensive help and tutorial information. Within the TAB Help, you can select the following options:

· About

· Buy Licence Protector

· Check for Update

· Licence Protector on the Web

· License Viewer - information about your license

· Online Help

· Quick introduction help


About
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Help, [image] About to retrieve version information and copyright notice.


Buy Licence Protector
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Help, [image] Buy Licence Protector to buy additional licenses or the main Licence Protector. The order process is completely automated using the e-commerce integration which Licence Protector offers.


Check for Update
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Help, [image] Check for Update to open the Update website. This is the main information area where you can download previous updates. It also provides detail information, if an update is a free service pack or requires an update subscription.

Click on [image] to get the following options

Configure Update Check

Here you can configure, how often a check for a new update is done and if it is automatically installed or not..

You can select one of the following options:

The update check is done in the background (runs as a Windows service) and informs you if an update is available.

Check for Updates

This is an instant check to validate, if an update is available.

You also can make an update check from your program manager group, Licence Protector, [image] Check for updates. The check is instantly done


Licence Protector on the Web
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Help, [image] Licence Protector on the Web to browse the Licence Protector website


The License File / License Information

Navigation: License Generator > TAB - Help :

License Viewer - information about your license
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license information for your Licence Protector version is stored in the license file LICPROTECTOR.LIC. To display your licenses for Licence Protector, choose the TAB Help, [image] License Viewer.

Licence Protector does not use Copy Protection for the License Generator, thus you can carry out multiple installations, but you can apply Activation Keys only on one machine to modify the license file.

·Apply Activation Keys always on the same machine -

·Backup the license file after each modification

If you use Add-on modules like the Activation Server 4 or Automatic License Generator on different servers, copy the file LICPROTECTOR.LIC to these servers.

If you re-install Licence Protector install the program version and copy the modified license file (not the original license file supplied) from your backup to the installation directory.

See also

Add new licenses to Licence Protector
Number of projects you can use


Add new licences to Licence Protector

Navigation: License Generator > TAB - Help > License Viewer - information about your license:

Add new licenses to Licence Protector
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Additional licenses for Licence Protector

To display your licenses for Licence Protector, choose the TAB Help, [image] License Viewer. If you have acquired additional licenses for Licence Protector (e.g. more projects or the concurrent user module), you can activate the licenses via the Activation Key you got with the order confirmation.

You can type in the Activation Key after pressing the button Activation Key.

Online Validation

Some Activation Keys are validated online and they require an Internet connection. After pressing the OK button this screen appears.

Select TAB Help, [image] Buy Licence Protector to buy additional licenses.

Apply Activation Key after Evaluation Period has expired

If the evaluation period has expired, click on the icon ?, select Show License Information (see screen below) and then press the button Activation Key.


Online Help
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select the TAB Help, [image] Online Help to open the online help, which you are using right now.


Special Functions
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The License Generator offers some special functions, which are described here:

· Confirmation prompt

· Command Line Parameters


Command Line Parameters
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The License Generator can be started using command line parameters.

Licgenerator.exe PARAMETER

The following parameters are supported

·-l "path\xy.lic" - loads the specified license file

·-p "path\xy.xml" - loads the specified project template

If you load a license file, it always needs the correct project template. Always specify the license file and project template.


Activation Server 4
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 is the central point for administration of licenses - create keys, lock licenses, change activations or generate reports.

It comes with an own online help


Part II - Enhanced Features
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This chapter gives you a lot of in depth information and explains different implementation options:

· Allow Reinstallation and multiple usage of an Activation Key

· Anti Hacker Strategies

· Automatic License Generator

· Concurrent user - how it works

· Copy Protection Details

· Custom made User Interface (own GUI)

· Demo / Evaluation Version - multiple Workflows

· Different delivery scenarios - like deliver a license file

· How TOs and FAQ

· Lock a license / Regular Online checks

· Limit number of program starts

· Network License - how it works

· Protect a Server Application, Service, Web Activation

· Store data in the license file

· Tamper Detection - prevent a reinstallation

· Transfer a license from PC A to PC B

· Use an USB flash drive

· Virtual Machines

· Workflow from Distribution to Activation

· License Viewer - your Licence Protector license

Additional Tutorials

· Activation Server

· Integration in Online Shops

· Function Reference and Error Codes


Allow Reinstallation / Product Reactivation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The default option is, that an Activation Key can only be used once. A key is stored in the license file and even if the license file is replaced, it can never be used again on the same machine.

If you want to allow that:

·a user can uninstall the application and reinstall it again

·any additional Activation Key can be used again when an application is reinstalled

·a user can change his hardware like network adapter

on the same machine, you can configure this as an option.

There are different ways for a reinstallation.

Reinstallation during the Evaluation Period

Reinstallation during the evaluation period is always possible but will never prolong the evaluation time - for details see Evaluation Options.

Restore a Backup

If the user backups the license file, deletes the folder, and restore the license file, the application will work without any additional configuration settings.

Complete Reinstallation

With a complete reinstallation, the original (generic) license file is installed again. The user has to enter the Serial Number again. By default, the Serial Number Key can not be entered twice. If you select [image] Unlimited installation

during the creation of an Serial Number Key, the key can be used multiple times on the same machine.

Hardware ID changes

The hardware ID changed because e.g. the network card was replaced. The result is a copy protection error. Your application could now try to automatically reactivate the product.

How does Licence Protector detect, if an Activation Key is used on the same machine?

There is a 2 step process.

1. Local (offline) test

The original key is stored in different places. If a new Activation Key is applied, it is checked if the Activation Key was already used or not.

2. Online validation

If an Activation Key is marked for Online Validation or the application is activated online, then the Activation Server 4 performs an additional online check. For each Activation Key or product activation, the complete hardware profile (installation codes) is stored. The Activation Server 4 now checks, if the Activation Key was already used on the same machine (the installation codes match) or if the Activation Key is sent from a different machine. If the installation codes do not match, the Activation Key is used on another machine and is rejected.

You can define, how many criteria have to match - e.g. 3 criteria out of 9 should match to allow a reinstallation.

Example

The MAC address is used for Copy Protection. The user replaces the network adapter. A reinstallation should be possible if hostname, volume ID, and NetBios name matches. This would allow a reinstallation even if the network is replaced.

It is possible to define that all installation codes must match. This would allow a reinstallation only on a 100% identical machine configuration.

For a network license, the server hardware is used to identify the machine.

A reinstallation is not possible if you use Tamper Detection. To allow a reinstallation, deactivate Tamper Detection.

See also
Create Activation Key / Serial Number for multiple usage
Web Activation Server definitions
Reactivation after copy protection violation


Create Activation Key / Serial Number for multiple usage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The information, if an Activation Key can be used multiple times on the same machine, is coded into the key. Therefore the key has to be generated with the option Unlimited Installation.

Create a key for multiple usage manually with the Licence Generator

If the License Generator is used, just check the option: Unlimited Installation additionally

Create a key for multiple usage using the Automatic Licence Generator

If the Automatic License Generator is used (see also create Serial Number automatically) then you have to set LocalReuse = yes in the config-autongenerator.xml file.

If you are using the Activation Server 4, you also have to add the definitions for the server.

See also
Web Activation Server definitions


Web Activation Server definitions

Navigation: Part II - Enhanced Features > Allow Reinstallation / Product Reactivation:

Activation Server definitions

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 offers multiple configuration settings to fine-tune the product reactivation.

Details about settings and configuration.

See also
Create Activation Key / Serial Number for multiple usage
Reactivation after copy protection violation


Reactivation after copy protection violation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the user gets a copy protection violation error - see screen - you can try a reactivation. This makes sense to cover the situation, that a user has changed the hardware criteria you used for copy protection. It is automatically covered using EasyGo.

How does this work?

·When the user activates the license 13 hardware IDs are transferred but only one ID is used for copy protection (you configure it on the server)

·In the case the ID you used changes, Licence Protector would connect to the Activation Server 4 and send again 13 hardware IDs

·The Activation Server 4 then compares the old IDs with the new IDs using a rule you can specify

Cover a copy protection error using own screens

If the result of PrepareAndCheck is error code 1024 (copy protection violation) then

·Open the file with SecurityLevel, then PrepareForce

·Retrieve the Serial Number using GetSerial

·Now perform a license check including product activation using WebRegisterExt and the Serial Number as ID. Product has to be the main module number.

·If you get an error code = 0, then the reactivation was successful. All other error codes should terminate the application

Make sure to make the correct Activation Server definitions for the reactivation.

See also
Create Activation Key / Serial Number for multiple usage
Web Activation Server definitions
Allow Reinstallation / Product Reactivation


Anti Hacker Strategies
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

We do offer additional security information for customers online. On our Internet site www.license-Protector.com, select Support and then Customer Self Service Portal. There you find within the Knowledge Base special chapters: Additional Solutions and Anti Hacker Strategies with more ideas to secure your software. The login data for this portal is provided for customers with a valid online subscription.

We strongly recommend implementing the following methods. The CRC / MD5 check is mandatory and the other methods should be implemented if possible.

· CRC / MD5 Check of the Licence Protector DLL

· CRC / MD5 Check of the main application EXE

· Detect crack using the TAG value

· Code Protection / Decompile Protection

· Hide the PSK / Read Key

· Read Only license File

· .NET - sign all components

· Validate the license in different program segments

You cannot prevent that your application is hacked (e.g. DLL call is bypassed) but you can detect it and change the behaviour of your application, so that it is working in a wrong way.

For .NET and Java you should additionally use the code protection / decompile protection offered by All-In-One Protector or an obfuscator to encrypt the code itself.


CRC / MD5 Check of the Licence Protector DLL

Navigation: Part II - Enhanced Features > Anti Hacker Strategies:

CRC Check of the Licence Protector DLL
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

One hacker approach is to replace the DLL. This can be prevented easily by checking the CRC value (cyclic redundancy check) or MD5 checksum of the DLL.

The CRC value of each dll can be found here. As each DLL is available in a compressed and uncompressed version you have to check for all CRC values of a DLL - for EasyGo you also have to check for the CRC value of the signed DLL. This is due to the fact that a user could have installed an application which uses the compressed DLL and another application which uses the uncompressed DLL. The last installed DLL would be used.

You can also retrieve the CRC value of an file with the GetCRC32 command (you can use the license Tester to retrieve the CRC value for any file).

Use the check before you open the license file. You should end the application without an error message if the DLL was replaced some times later in your application. If you would end the application directly after the test this can be traced. Just write status information in a log file.

There a different methods to make a CRC check and the check has to be included in the source code. Below are links to source code samples. Please take care of copyright issues if stated on the web site or within the source code.

Articles how to implement CRC32 checks

·http://delphi.about.com/gi/dynamic/offsite.htm?zi=1/XJ&sdn=delphi&zu=http%3A%2F%2Fwww.efg2.com%2FLab%2FMathematics%2FFileCheck.htm (Delphi)

·http://www.vbaccelerator.com/home/NET/Code/Libraries/CRC32/article.asp (.NET)

·http://vb-tec.de/crc.htm (VB6 - German article)

·http://www.aboutvb.de/khw/artikel/khwcrc.htm (VB6 - German article)

·http://www.networkdls.com/Software.Asp?Review=22 (C++)

·CRC on Wikipedia: http://en.wikipedia.org/wiki/Cyclic_redundancy_check

or search for crc32 / MD5 check in Google.

We strongly recommend making an CRC check to be sure, that the correct Licence Protector DLL is registered. The MD5 CRC check is more stronger than the CRC32. If security is a main issue use MD5.

How to find the LicProtector.DLL on the system

You have to find the place where the DLL is stored via registry settings. This is due to the fact that somebody could install the DLL on another folder and register it there.

You get the installation folder with this registry entry

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\CLSID of DLL\InprocServer32 (DLL)

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\CLSID of DLL\LocalServer32 (COM exe)

or when the DLL was registered without admin rights

HKEY_Current_USER\SOFTWARE\Classes\CLSID\CLSID of DLL\InprocServer32 (DLL)

HKEY_Current_USER\SOFTWARE\Classes\CLSID\CLSID of DLL\LocalServer32 (COM exe)

On 64bit operating systems the registry entry is

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\CLSID of DLL\InprocServer32 (DLL)

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\CLSID of DLL\LocalServer32 (COM exe)

Replace the CLSID of DLL with the information of the latest release - see Add the LicProtector410.DLL


CRC / MD5 Check of the main application EXE
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can also use a CRC (cyclic redundancy check) check or the MD5 checksum to detect if your main application EXE is cracked. This involves a bit more work like the CRC Check of the DLL but adds additional security.The check could be done as follows.

·Store the CRC value of your EXE file in a separate license file, which you name e.g. myapp.idx. A separate license file is necessary because you have to update this file every time you make a new compile of your EXE file. If you update the EXE file you always have to include the file which contains the CRC check in your update

·At the application start, first check the CRC value of the DLL

·Retrieve the CRC value of the EXE from the license file

·Check your EXE file

·In case the CRC is wrong let your application crash or hang - but not directly after the CRC check

Tip: You can store multiple CRC values to test different EXE files. Either add all values in one field or use a module for each TAG value.

Create license file template

Make a new license file template which uses a different Project Key (Read/Write Key). Store the CRC value of your EXE file in the field TagValue of the node <Default>. You need to define a default module although you would not use it.

Load the file into the Generator and save it as myapp.idx.

Source Code Integration

You have to open the file myapp.idx (without user interface), retrieve the TagValue and then close the file. Use these commands:

· SecurityLevel

· PrepareForce

· GetVal - Token LTG

· Quit

Now retrieve the CRC value of your EXE file - how to retrieve the CRC see CRC Check of the Licence Protector DLL. You could use GetCRC32 value if first checked the DLL to be sure that it is not cracked.

If the CRC does not match, continue your application but let it crash, hang or just terminate later.

Tip: You can create a tool to update the myapp.idx file with the latest CRC value of your EXE.

·Retrieve CRC value of the EXE with GetCRC32

· SecurityLevel

· PrepareForce

· SetVal - Token LTG

· Quit

The MD5 CRC check is more stronger than the CRC32. If security is a main issue use MD5.


Detect crack using the TAG value
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The main target of a hacker would be the DLL. One approach is to disassemble the EXE file, search for the DLL calls and bypass the DLL calls. This can be discovered with the method described below.

To obstruct crackers in removing your protection and license-check code you can use this strategy based on the Tag values.

How does a cracker work? First he tries to locate the code that blocks the execution of the program. Typically he finds that code by searching for the output e.g. “you have no license…”. Then he bypasses the failing check that leads to that message. So he will gradually learn that all calls to Licence Protector are for protecting the application and he probably will remove them. And that is the point where the “good and bad value” can be successfully used:

Initialize a variable at the beginning of your application with a wrong value.

Example: 1000000 (to use the timer later) or if you use calculations in the application define a constant which you use in the calculation with a wrong value. A timer would let the application hang. A wrong formula would give wrong results.

Within the license file, store the correct value in the TAG field – e.g. 1 (to use the timer) or the correct value of the constant.

The PrepareAndCheck command and the ValidateEX command return the Tag value automatically. Before using the ValidateEx command, reset the variables with the wrong value.

Now do not simply check this value and react with a message like “Hey cracker, you have removed my protection code”. The cracker would bypass that code at once and nothing is won. The trick is to use that bad or good value silently for example in an algorithm that calculates the duration of a timer-interval. The application needs an interval of 1 second to work correctly but calculated with the wrong value it would be set to 1000000 (Note: This is an example!). The result is that the cracked application will hang or not be completely functional and the cracker will have a really hard time to find the reason. This is because now he has to understand the logic of your application and not only search for some key-words and bypass some lines of code.

A further improvement is to start the bad behaviour not at once but after some time so that searching for the problematic code will be even more complicated.

As mentioned above you should use the ValidateEx() function to read the good value. Every module can have an own tag value defined in your project configuration file in the TagValueModule item.

Example

Define a Tag value in the project template

·At the beginning of your program, set the variable TagValue1=100000

·When testing a module read the TAG value with ValidateEx() command

·Divide TagValue by 20. Wait in the program for the result (either 1 second or 5000 seconds)

If the hacker has removed your code, then the program will wait for 100005000 seconds.

Note: This is a very simple example. You should use a more complex algorithm and your counter-measures should not easily attract suspicion.

Recommendations

·Use the TAG value in any case with the PrepareAndCheck command

·Use ValidateEx() multiple times during the application runs. Reset the value before you call this command

·If you have different modules use different TAG value strategies (e.g. one formula, one timer)


Code Protection / Decompile Protection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector can be perfectly combined with All-In-One Protector (www.AllInOne-Protector.com ), which ensures, that the code cannot be modified or decompiled.

All-In-One Protector creates a VIRTUAL ZONE in the memory of the computer, where the EXE file and all other files (like DLLs) in the database are copied. After copying the files, the EXE file is started.

This VIRTUAL ZONE simulates a disk. If the EXE file opens another file or starts another application, the file is first searched in the VIRTUAL ZONE. If the file is not found on the VIRTUAL ZONE, it is searched in the real file system. This technique ensures, that an application runs without modification. An access to the VIRTUAL ZONE from outside is not possible - all files are completely protected during runtime.

The All-In-One Protector technology is much better than a wrapper:

·No chance to decompile the database or analyse the EXE file

·Protects multiple files (e.g. DLLs and all files which are read only) and not only one EXE file

This offers a perfect decompile protection and is more effective than obfuscation of the code.

There is a special bundle price. Contact sales@mirage-systems.de for more information.


Hide the PSK / Read Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If an EXE file is disassembled, th ePSK or ReadKey would be visible. We recommend splitting the keys in different parts and variables - if possible, split it between different DLLs.

Example: PSK: This is a b1eatiful mo2rning

Split the READ in your code into variables with a$=”th”, b$=”is”, c$=”a” and define constants for numeric values. Add all variables and the constants to a string before you use the prepare method. In the example b$ can be used for the word THIS and for the word IS - use variables whose content you can use multiple times in the PSK.

If possible, only use the Read Key instead of the PSK and split the Read Key in the same way.

Sample

Read Key:

r1nBLCV1rZLZI0YyG7J1BiGNc2cLtZg21pfxm1nv9Jl2f34fs2ajVw31ToTQL1QYtDg21mdF5285UTM24Huyj1zSmDp1Eytat2dLCLB1XPh3Z292dIG11XErz134VPv1nsIxW0SWjHC1Tg4v9280TSr1tbt6o1Tu5Je0SVKh71c8Vtx12XtvM1pTIxi1lgBca2acLYI1Dv5wb11Y7Cd12XcVO1pPfXm1XYppC0ZM37R1yXsvn27WwPF1qVcY12eLrUF1UAjZl26Y1xe17wY4j

A very simple method would be to hide the strings in different program parts and make calculations. You can implement more sophistic code like the one below. This is just to outline an idea.

x$=”2”

a$=r1nBLCV1rZLZI0YyG7J1BiGNc2cLtZg21pfxm1nv9Jl2f34fs2ajVw31ToTQL1QYtDg21mdFb$=str$((500+28)) c$=5UTM+x$+4Huyj1zSmDp1Eytat+x$+dLCLB1XPh3Z+x$+9+x$+dIG11XErz134VPv1nsIxW0SWjHC1Tg4v9+x$+80TSr1tbt6o1Tu5Je0SVKh71c8Vtx1+x$+XtvM1pTIxi1lgBca+x$+acLYI1Dv5wb11Y7Cd1+x$+XcVO1pPfXm1XYppC0ZM37R1yXsvn+x$+7WwPF1qVcY1+x$+eLrUF1UAjZl+x$+6Y1xe17wY4j

readkey$=a$+b$+c$

.NET offers a SecureString Class. It represents text that should be kept confidential. The text is encrypted for privacy when being used, and deleted from computer memory when no longer needed. For details see: http://msdn2.microsoft.com/en-us/library/system.security.securestring.aspx

Another good idea is to use 2 license files with different encryption. One file to store configuration data (config.lic) and one file to store the license information (license.lic)

·Create a config.lic with a different encryption (ReadKey / Writekey)

·Store the ReadKey of the license.lic in the data area of the config.lic or in the TAG value

·You can additionally store the CRC values of your other program components in the config.lic

·Hide the ReadKey of the config.lic as described above in your Source Code

·To open the license file, first open the config.lic, retrieve the ReadKey of the license file license.lic and then open the license.lic file


.NET - sign all components
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

.NET offers a Strong-Name signing. This prevents spoofing of your code because the framework checks during loading if the assembly was modified.

This is just an additional option you could use to add one more security feature but it does not replace the other anti hacker strategies.

For more details how to use strong-name signing see this article:

http://msdn.microsoft.com/msdnmag/issues/06/07/CLRInsideOut/default.aspx


Validate the license in different program segments
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Validate the license not only during program start but also in different parts of your application.

To prevent, that somebody never terminates a program during a trial period, include a timer to test e.g. every hour the license.

The regular license check can be done with the command: ValidateEX


Automatic Licence Generator

Navigation: Part II - Enhanced Features:

Automatic License Generator
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Automatic License Generator is a tool to generate license files and Activation Keys in a batch process. You can use it for integration in online shops, websites or your customer system.

The integration for the e-commerce providers like www.avangate.com, www.cleverbridge.com, www.element5.com and www.sharit.com in combination with EasyGo is covered in the chapter Integration In Online Shops.

The e-commerce integration using the Automatic License Generator is described in the chapter Integration in Online Shops

Installation

·Unzip the files to the final installation folder. This could be a network drive if multiple users need access

·Add a write permission for the user everyone to the license file alg.lic

·Click on AutoLicGenerator410.exe and activate the product using your Serial Number

Files

The installer package contains 2 application files

·AutoLicGenerator410.exe is the main application

·AlgShop410.exe is a special generator for Cleverbridge and Element5/Shareit

Documentation

The complete documentation for the Automatic License Generator is only available as a PDF documentation

Documentation Automatic License Generator

See also

Create Serial Number using own user interface
Create a Key List with Serial Numbers
Create Unlock Key using own user interface


Concurrent User - how it works
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The concurrent user license is also called floating license. It is checked, how many users have started the application at the same time. This allows buying a 5 concurrent user license and install an application on e.g. 30 PC's.

The license per concurrent user combines the PC name + Windows user name (e.g. OFFICEPC-TOM) and stores this name in the license file. The combination is necessary to count a license, even if a user is logged in with the same name on multiple PC's.

Once the application is started, it checks, if the name is already stored in the license file and if not, it starts only if a free license is available. After the application has been terminated, the license is given back by removing the name in the license file. The license is available again for another user.

The license file has to be on the server on a shared folder. Each application user needs a read/write access to the license file.

A Citrix or Terminal Server requires a special licensing. There is only one machine (hardware ID), but on this machine multiple sessions can be started. Licence Protector automatically detects, that the application runs on a Citrix or Terminal server and counts a license for each session (=PC).

Example

A home office user logs into the company network using a Citrix in the office. Licence Protector would retrieve the hostname of the home PC and would require a license for this PC.

This feature is supported for the license type per computer/seat and for concurrent user licensing. It also works in the same way for Remote Desktop. Other tools like gotomypc just transfer the screen content and mouse movements. Then no additional license is counted.

See also

Details of the concurrent user technique
Concurrent user with EasyGo
Concurrent user for modules
1 user concurrent user module
Remove Concurrent User
Special considerations
Summary of all commands related to concurrent user
Floating license over the Web


Details of the concurrent user technique
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

What happens if an application crashes and no Quit could be performed to remove the user from the license file? The license of this user keeps locked and no other user can use the in fact free license. To avoid this problem, Licence Protector uses a heartbeat algorithm to identify a “dead” license and frees it for other users. Every concurrent user sends a heartbeat (in fact an automatic validate) and at the same time checks if there are missing heartbeats of other users. As a result, 'alive' users remove 'dead' ones in the license file.

Every module has a property CheckInterval which decides, when heartbeats have to take place and are expected to take place. With that method it is assured, that at maximum 2 times of the check interval 'dead' users are removed from the license file. This interval is calculated automatically depending on the maximum number of users. In a file with module A (30 users), module B (45 users) and module C (15 users) the module B would be used to set the interval time as it includes the maximum number of users. The time is 30 seconds multiplied with number of users.

Example

Concurrent user module M1 with 10 licences (module with the maximum number of users)

The module M1 is validated with PrepareAndCheck or Validate, which starts the concurrent user mechanism. The heartbeat of every instance is by default 10 users x 30 seconds = 300 seconds. A 'dead' user license would be removed in best case after 300 seconds and worst case after 600 seconds.

If an application crashes and the user starts the application again, there are 2 situations:

·the license was not removed and is still a valid license in the file. Then the license is updated and the application starts

·the license was removed. Then the application can only start if there is a free license available

Note that Licence Protector does not need to have an identical time base for all involved clients because it uses an internal time mechanism.

Which name is used to count the license?

The functions ExistsEntry, IsEntryActivated, GetEntriesOfModule are also available for concurrent user modules. Note that the usernames you receive have the format:

Username+++Workstation

For example: You will receive alisa+++stationhermes if alisa uses a concurrent user license from her computer named stationhermes.

Adding the workstation name ensures that if a user logs in with the same name on 2 machines that it is counted as 2 licenses.

2 different concurrent user levels

There are two possible concurrent user levels:

·With Heartbeat (default)

·Light

In level “Light”, there is no heartbeat mechanism and therefore a dead instance is not recognized and removed automatically. Those dead instances have to be removed manually (see remove concurrent user). The advantage of “Light” is, that it does not need as many resources as the level “Heartbeat”.

You can change the default value using different options:

·Use command ConcurrentUserLevel

·Change the setting only for one license file in the License Generator, detail page

·Change the setting in the license file template -

Changes in version 2.6

Until version 2.6, each module had an own heartbeat. Now only the module with the maximum number of licenses does the heartbeat testing. This is a major improvement regarding former versions, in which more than 50 concurrent user modules could lead to situations, where the application won’t react any further because there were multiple accesses to the licence file in one second.


Concurrent User with EasyGo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the concurrent user module is the main module which used for activation with EasyGo then nothing special has to be considered. Use Quit only at the end of the application and not after PrepareAndCheck (set quit=false).

An error screen - no free license available would appear in case a user tries to start the application and no license is available.

Use one or more Validate() commands during the execution of the application to get an updated status of the license. The heartbeat check does not return an error code and therefore an additional Validate() is necessary


Concurrent user for modules
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each module can be from type concurrent user.

You can use a concurrent user module exactly the same way as using a (named) user module:

·Prepare() at program start (e.g. PrepareAndCheck (set quit=false), PrepareAdvanced, Prepare)

·Use one or more Validate() commands during the execution of the application to get an updated status of the license. The heartbeat check does not return an error code and therefore an additional Validate() is necessary

· Quit() at the end of the program

You must keep the Licence Protector instance in order to work with concurrent user. Quit may be used only at the end of the application. It removes all users from all modules. If you want to terminate all users of a single module, use the command StopConcurrentUsage.

If you use multiple modules with concurrent user, see special considerations regarding the frequency of testing.


1 user concurrent user module
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you have a concurrent user system running with 1 license, then the automated detection of a machine that hangs does not work. The user is only removed if the same user logs in again.

We recommend implementing the following workflow with a license for 1 concurrent user:

· ValidateEx

If Error 32 (no free license) -> Check Totallicenses

If Totallicenses=1 (one user license)

Delete all users in the license file with RemoveAllItems

Wait to check if the user is alive

· CheckInterval (retrieve the time in seconds a user should respond - heartbeat) - with a one user system this would be 30 seconds

·Wait for this interval x 2

·Retry the ValidateEx command

If you still get error code 32, then the other user is a live user and no license is available.

If you get status error code = 0 then your user has got the new license


Remove Concurrent User
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The inbuilt concurrent user feature removes a user automatically either

·all users from all modules with Quit

·all users from one single module with StopConcurrentUsage

·inbuilt heartbeat which detects crashed workstations

Offer the License Viewer to allow to remove a user - see Deactivate a network license

It is possible to remove all users from all modules with the following code sequence and continue concurrent user testing.

· GetModuleList (retrieve a list of all modules)

· GetEntriesOfModule (retrieve a list of all users for a module from the result of GetModuleList)

· DeactivateEntry (deactivate the user with the username from the result of GetEntriesOfModule)

· RemoveDeactivated (delete all deactivated users)

or

· RemoveAllItems (removes all users from a module)

After all users are removed, all active users are added again to the license file automatically with the next heartbeat check. The result is a license file with all inactive users removed and all active users booked in again.

Offer this option for an admin user in your application to instantly remove users.


Special considerations
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The property CheckInterval automatically is set by Licence Protector and depends on the maximum number of licenses. You can read that value with the function CheckInterval and if you want to change it, you can use SetCheckInterval (). Do not set the value too small. If 1000 concurrent users have to do their heartbeat in a 30 second interval then you probably get a massive resource problem!

Stay near the automatic value which is

Number of licenses | CheckInterval
5 | 150 seconds
10 | 300 seconds = 5 minutes
20 | 600 seconds = 10 minutes
50 | 25 minutes
100 | 50 minutes
500 | 250 minutes
1000 | about 8 hours

There is another parameter that can be set to modify the recognition of non responding license: DiffPct . That parameter’s default value is 0. If you set it to e.g. 10 (percent) then a dead user entry is recognized at least CheckInterval (10 seconds) plus 10 percent = 11 seconds.

You can read the DiffPct value (in percent) by the function DiffPct and you can set it with SetDiffPct.

Note: A change of CheckInterval with SetCheckInterval and DiffPct with SetDiffPct affect the whole license environment so never let each of your users modify these values.

To check the local properties of the concurrent user mechanism there are the following functions:

·GetCUIsRunning – checks if the user for that module is running, that means that it was validated and so the concurrent using started

·GetCULastValidate – Get the time of the last automatic (not explicitly executed) validate (the last heartbeat!)

·GetCUNextValidate – Get the time of the next, planned automatic validate (the next heartbeat)

·GetCURunCounter – Gets the number of executed automatic validates

These functions only get values of the local instance of Licence Protector. If you are on Bert’s machine and he uses the concurrent user module D1006 then you can use the functions to extract the values. You can not get the values of Charlie which uses the module in another client and therefore access another Licence Protector instance.

As explained before, the Quit() operation is essential for the concurrent user mechanism. Don’t forget to Quit()! This will free the license in the license file.

An alternative to Quit() is StopConcurrentUsage() which is performed only for a specified user and a specified module. So it typically is used in the middle of a running application in contrary to Quit() which normally is used at terminating the application.

We recommend usinging the above mentioned functions only if you do explicitly don’t want to use the in build default values.


Floating License over the Web
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

For single user applications, Licence Protector offers an option to use an application on multiple PC's but only on one PC at a time. It is similar to a floating license in a network but uses the Activation Server 4 to check, which PC has started the application.

During each program start, the PC has to register the application online and at the end of the application, the application has to unregister online.

As a basic integration use the EasyGo workflow including the license transfer option.

License File

The license file is either on the local computer or on the network. The module type must be a Yes/No module so that the users are not counted within the license file. The module count is done through the Activation Server 4.

At the start of the application

The command PrepareAndCheck will do all necessary steps. There is nothing special to consider.

If you want to start the application without displaying any screens, use the following code sequence

·Open the license file with Prepare. If return code is not 0 use PrepareAndCheck to display the error

·Find out if the product is activated (GetWebActivation = 2). If the product is not activated (e.g. trial mode) use PrepareAndCheck

·Retrieve main module ID with MainModuleID

·Retrieve Serial Number / ID with GetSerial. If the Serial Number / ID is empty then the product is not activated yet and can only be used on this PC. Do not continue with the online check

· Activate the license transfer option using SetRegisterLicTransfer. Set option TransferLicence to true, to transfer the complete file. This command must be used before WebRegisterExt.

·Register the license online using WebRegisterExt and the main module ID and Serial Number as parameters

Error handling

·Check the error code after PrepareAndCheck or WebRegisterExt

·If the error is 3001 then no Internet / Server connection is available. You could allow a program start although the license count is wrong. Otherwise the user will not be able to use the program in case of an Internet / Server problem

·For all other errors terminate the application

At the end of the application

When the application terminates, the license has to be unregistered online. The local license is then locked.

·Retrieve main module ID with MainModuleID

·Retrieve Serial Number / ID with GetSerial

·Lock the local license using DeactivateModule. Use the main module ID and your Serial Number / ID as parameter.

You can disable the progress screens using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage.

Activation Server

·Change how often the Serial Number can be used to the maximum concurrent user license usage

·The field: Effective Key / ID usage is the real time status of the number of users who are working right now with the application

Special Considerations

This workflow will result in a heavy server load of the Activation Server 4, depending how many products you have delivered and how often a user does start the application. If you are using the hosting service ensure that you have the right hosting package to cover the requests.

See also
Floating license in a network


The Basics about Copy Protection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a media independent protection - the media itself like CD / DVD, download link or USB flash drive is not modified or protected. The copy protection does not prevent, that you can copy the data from CD to the hard disk but it prevents that the application can be started on multiple machines.

The advantage of a software copy protection is:

·media independent - distribute the application via CD / DVD, download, USB flash drive or other media where you can store files

·the application can run without a CD / DVD inserted

·you can produce even one single CD - no need to have 1000 CDs duplicated at once

·no problems with the CD / DVD drives or operating systems because no physical modification (like modification of the CD) is done

The additional step, which is necessary, is to transfer the hardware IDs. With Online activation, this step is automated. With activation by e-mail, fax or phone this is a manual process.

This feature prevents the application, that it can be run on different machines. It binds the license file to a hardware specific item.

The user can not move the application from computer A to computer B because the hardware identifiers that are used for Copy Protection will be different on another machine - Copy protection does not prevent the copy process but starting the application on non licensed machines.

The place, where the license file is stored is used to determine the hardware information of the machine.

·If the license file is stored on a local machine, then the hardware of the local machine is used

·If the license file is stored on a server, then the server hardware is retrieved through the network protocol (Volume ID, MAC Address, Hostname). When starting the application on a local machine within a network, Licence Protector retrieves the server hardware even if the application is running on the local machine

·If the license file is stored on a NAS drive (Network attached storage), then the hardware of the NAS is used (Volume ID, MAC Address, Hostname). When starting the application on a local machine within a network, Licence Protector retrieves the NAS hardware even if the application is running on the local machine

·If the license file is on a USB flash drive, then the hardware ID of the USB flash drive is used

Copy Protection can be used as an option. You can create a license without Copy Protection by just sending out an Unlock Key without Copy Protection (manual product activation) or special configuration settings for the online activation.

You can also use your own hardware IDs - see chapter Use own hardware IDs


Hardware IDs
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Hardware IDs are often referenced as installation codes, because the codes are only available after the installation of the application on a machine. The hardware Id's are referenced with installation code numbers to prevent, that the user knows the criteria which is used. The installation code numbers are itemized in brackets after the name of the hardware ID.

For protection of privacy, the hardware ID is always an 8 digit code. This is very important because some countries do not allow to transfer personal data..

The following hardware IDs are supported. The number in brackets represent the installation codes, which are used within Licence Protector.

· Volume ID (1)

· MAC Address of the network adapter (2)

· Hostname (3)

· Netbios Name (4) 1)

· Volume ID and UNC Pathname (5) - recommended for network installations

· MAC Address and UNC Pathname (6)

· IP-Address (7) 1)

· Volume ID + MAC Address + Hostname + UNC Pathname (8) 1)

· Volume ID + MAC Address + Hostname (9) 1)

· Hostname and UNC Pathname (10) - recommended for a server application

· USB flash drive (11) 1)

· Windows Domain(12) 1)

· Windows ID (13) - recommended for single user installations

· System ID - MAC OS X (14)

1)

This feature is only available in the Professional Edition.

If a hardware ID can not be retrieved (e.g. there is no network adapter) then the code is empty.

Installation codes which work only for single PC installations

· Netbios Name

· USB flash drive

· Windows Domain

· Windows ID (recommended)

Server license (Client server)

For an application which runs on the client, the license test is done on the client and the license file is on the server, you should only use an installation code combined with the UNC pathname like code 5, code 6, code 8 or code 10

The product activation is done on the client machine.

Server license

If the application is server based or a web application and the license test is done on the server, you can use the installation codes for single user, especially Windows ID. The product activation is done on the server.


Sending Hardware IDs
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Using the Online Activation, the hardware IDs are automatically transferred to the Activation Server 4. Using activation by e-mail, fax or phone the codes have to be sent to you and you have to send and unlock key back.

The complete process is described in the chapter: Worflow - from Distribution to Activation

Customers, using the Activation Server 4 can use an automated e-mail activation service


Volume ID (1)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each hard disk drive (even a USB flash drive) has a volume ID (like a Serial Number). To view a drives current Volume ID you can just perform a dir <drive>: and the volume ID is shown on the second line down, e.g.

Volume in drive E is system
Volume Serial Number is BC09-8AE4

The Serial Number can be changed with tools and if a drive is imaged, the volume ID is also imaged

Pros/Cons

+ Always available and always works

+ Works in single user and network environment

- After reinstallation of Windows, the volume ID changes

- Volume ID’s are always the same when a image tool is used to set up a drive

- Allows to install the application multiple times on the same server / computer

Recommendation

·Good for applications used with a network license where it does not matter when the license file could be duplicated on the same server. Duplication on the same server is prevented using code 5 (Volume ID + UNC Pathname)


MAC Address (2)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

The MAC address of the network adapter is a good criteria because it is still available after a reinstallation of a machine and is independent of disk imaging. Adapters for VPN and dial-up modem adapters are not used because they are not available without internet connect.

There are a few things to be considered as well as in a server environment as for single user installations.

W-LAN Adapter

If a mobile PC has a W-LAN adapter and is in battery mode without a W-LAN connection, then often the W-LAN adapter is disabled to save battery. On a system with Vista and Windows 8, Licence Protector can retrieve the disabled adapter but not on Windows XP. A disabled adapter on Windows XP results in a copy protection error.

The same situation occurs when a network cable is unplugged.

Switch to Netbiosname on single user maschines or hostname.

Server with 2 network adapters

If a server has more then one adapter and some PCs access the server through adapter 1, some through adapter 2, then a copy protection violation will occur. In this case we recommend switching to the criteria Volume ID + UNC Pathname.

Details multiple network adapters

On the image above you see 5 clients A, B, C, D and E which use an application protected by Licence Protector. All five use the same license file on the central fileserver.

The problem is, that A and B reach the fileserver on a different route than clients C, D and E and therefore the clients have different connected network-cards, here card 0 and card 1, and so they calculate different MAC addresses. But all clients use the same license file and in that license file, let’s assume card 1 is used as installation code.

The result is that only C, D and E will pass the Licence Protector copy protection check. At A and B the check will fail!

If you have such an environment then use or switch to Volume ID or Hostname in comibnation with UNC path as mean of copy protection.

Server with subnets

In a subnet portioned network environment the MAC address should not be used. All PCs in outer-subnets can not retrieve the MAC address. Switch to Volume ID or Hostname in comibnation with UNC path as mean of copy protection.

Novell Server

Licence Protector can be used on a Novell server for licensing, but the Software Copy Protection will not work because the hardware information like Volume ID or MAC address can not be retrieved from the server.

PC with multiple network adapters

If a PC has multiple network adapters and is offline, the same situation occurs like described above with W-Lan Adapters.

PDA with network adapter

If a PDA with an inbuilt network adapter is connected to the PC during the activation is done, then it could happen that this network adapter is used because the network adapter of the PDA is added to the PCs network adapters. The PDA should be disconnected and then the MAC address can be used for copy protection.

Pros/Cons

+ After reinstallation of Windows, the MAC address does not change

+ If an image tool is used, the MAC address is still different

+ Good within a network because the MAC address must be unique

- See considerations above for multiple network cards

- Allows to install the application multiple times on the same server / computer

Recommendation

Should be used for enterprise users because disk imaging is often used to set up multiple machines and a reinstallation of Windows does not need a new licensing.


Hostname (3)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A Windows machine's NetBIOS name is not to be confused with the computer's host name. Each computer running TCP/IP (whether it's a Windows machine or not) has a host name (also sometimes called a machine name). You can view/change it on the DNS tab in Control Panel -> Network -> TCP/IP -> Properties Host names are used by applications such as telnet, ftp, web browsers, etc. In order to connect to a computer running the TCP/IP protocol using its HOST name, the host name must be resolved into an IP Address (the host name or FQDN (Fully Qualified Domain Name)-IP address resolution is typically done by something called DNS - Domain Name System/Service). Changing a computer's Host name DOES NOT change its NetBIOS name.

Note

If a local PC does not have a network adapter and uses a dial-up connection for registration then the hostname could change between 'localhost' and the hostname used for the dial-up connection. The only solution for this scenario is to use the NetBIOS computer name.

Pros/Cons

+ Works in single user and network environment

+ Good within a network because the hostname must be unique

- After reinstallation of Windows, the hostname changes

- See considerations above with dial-up connections

- Allows to install the application multiple times on the same server / computer. Combine it with UNC Path (instcode 10) to allow only one installation

Recommendation

·Should be used for enterprise users which have problems using the installation code with the MAC address


NetBIOS Computer Name (4)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each computer running Windows has a NetBIOS name; you can view/change it on the identification tab in Control Panel -> Network. Various services & client tools, including Network Neighbourhood and NET USE, use NetBIOS names. The NetBIOS name is specified when Windows networking is installed/configured. In order to connect to a computer running TCP/IP via its NetBIOS name, the name must be resolved to an IP Address (the NetBIOS name-IP address resolution is often done by WINS - NetBIOS Name Server). A computer's NetBIOS name is often the same as that computer's host name, but it doesn't have to be.

Pros/Cons

+ Works always in single user environment

+ See considerations regarding hostname with dial-up connections

+ Works even in Notebooks with W-Lan adapter when disconnected from the local network

- After reinstallation of Windows, the NetBIOS computer name changes

- Only usable for single user installations

- Allows to install the application multiple times on the same server / computer

Recommendation

·If you do have only single user installations then use the NetBIOS name

Settings for Activation Server

To allow a reactivation you have to enable the use of local hardware IDs.These are the settings for the project.config file

<InstCodeType1>4</InstCodeType1>

<InstCodeType2>3</InstCodeType2>

<InstCodeType3>1</InstCodeType3>

<AllowReactivation>Yes</AllowReactivation>

<IgnoreLocalInstCodes>false</IgnoreLocalInstCodes> (definition is mandatory for this hardware ID)

<MinIdenticalInstcodes>3</MinIdenticalInstcodes> (number of hardware IDs which have to match to allow a reinstallation)

This ID can only be used as a single PC / single user license. A network license is not supported.

This feature is only available in the Professional Edition.


Volume ID + UNC Pathname (network licence) (5)

Navigation: Part II - Enhanced Features > Copy Protection - Details > Hardware IDs:

Volume ID + UNC Pathname (5)
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This Installation Code combines the Volume ID with the UNC pathname (details).

Pros/Cons

+ Always available and always works

+ Works in single user and network environment

+ Allows only one installation on one machine

- After reinstallation of Windows, the volume ID changes

- Volume ID’s are always the same when a image tool is used to set up a drive

Recommendation

·Should be used for enterprise users which have problems using the installation code with the MAC address and which want to make sure that the application is only installed once

This code is ideal for a network license as it prevents multiple installations on the same server and will most often work - also in complex network environments

This code results in a copy protection error if the applications is started on the server AND on the workstation. It only works if the server is used as a dedicated server. Use code 1-3 in case of an problem.


MAC Address + UNC Pathname (network licence) (6)

Navigation: Part II - Enhanced Features > Copy Protection - Details > Hardware IDs:

MAC Address + UNC Pathname (6)
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This Installation Code combines the MAC address with the UNC pathname (details).

Pros/Cons

+ After reinstallation of Windows, the MAC address does not change

+ If an image tool is used, the MAC address is still different

+ Good within a network because the MAC address must be unique

+ Allows only one installation on one machine

- See considerations for MAC address in combination with W-LAN and multiple network cards

Recommendation

·Should be used for enterprise users because disk imaging is often used to set up multiple machines and a reinstallation of Windows does not need a new licensing.

This code results in a copy protection error if the applications is started on the server AND on the workstation. It only works if the server is used as a dedicated server. Use code 1-3 in case of an problem.


IP Address (7)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Every computer running TCP/IP needs an IP address. This address has to be unique inside a sub network but is not worldwide unique.

Pros/Cons

+ Works in single user and network environment

+ Ideal for a server with an static IP address

- Only unique in a subnet, not unique worldwide

- See considerations above with dial-up connections

- Allows to install the application multiple times on the same server / computer

Recommendation

·Can used as an alternative for the hostname

This feature is only available in the Professional Edition.


Combination Code 1+2+3+UNC Pathname (8)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This Installation Code combines the Volume ID, MAC address and Hostname with the UNC pathname (details).

The combination of the several installation codes makes it significantly more difficult to configure virtual machines with identical hardware IDs.

Pros/Cons

+ Cheating is extremely difficult due to the 4 used parameters

+ If an image tool is used, the MAC address is still different

+ Good within a network because the MAC address must be unique

+ Allows only one installation on one machine

+ Works in single user and network environment

- Needs more often a re-licensing because of hardware changes

- See considerations for multiple network cards and subnets

- Restricted use in network environment with Windows 98 / NT machines

Recommendation

·Should be used for environments were heavy copy protection is needed and several installations on one machine should not be possible. Otherwise use installation code 9.

This feature is only available in the Professional Edition.

This code results in a copy protection error if the applications is started on the server AND on the workstation. It only works if the server is used as a dedicated server. Use code 1-3 in case of an problem.


Combination Code 1+2+3 (9)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This Installation Code combines the Volume ID, MAC address and Hostname. The combination of the several installation codes makes it significantly more difficult to configure virtual machines with identical hardware IDs.

Pros/Cons

+ Cheating is extremely difficult due to the 3 used parameters

+ If an image tool is used, the MAC address is still different

+ Good within a network because the MAC address must be unique

+ Works in single user and network environment

- Needs more often a re-licensing because of hardware changes

- See considerations for multiple network cards and subnets

- Restricted use in network environment with Windows 98 / NT machines

- Allows to install the application multiple times on the same server / computer

Recommendation

·Should be used for environments were heavy copy protection is needed and several installations on one machine should be possible. Otherwise use installation code 8.

This feature is only available in the Professional Edition.


Hostname + UNC Pathname (server licence) (10)

Navigation: Part II - Enhanced Features > Copy Protection - Details > Hardware IDs:

Hostname + UNC Pathname (server license) (10)
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This Installation Code combines the Hostname with the UNC pathname (details).

Pros/Cons

+ Works in single user and network environment

+ Good within a network because the hostname must be unique

+ Allows only one installation on one machine

- After reinstallation of Windows, the hostname changes

Recommendation

·Use it when you have a server application

·Should be used for enterprise users which have problems using the installation code with the MAC address + UNC path (code 6)

This code is ideal for an application, which only runs on the server as it prevents multiple installations on the same server and seldom causes a problem

This code results in a copy protection error if the applications is started on the server AND on the workstation. It only works if the server is used as a dedicated server. Use code 1-3 in case of an problem.


USB flash drive (11)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a unique technology to use a standard USB flash drive as a 'Dongle replacement'. Now the times are over where you have to decide whether to use a software copy protection or a Dongle.

The big advantage compared with a dongle is, that nearly any standard USB flash drive can be used. You can send out the USB flash drive with the license file or the customer can use his own USB flash drive. If a USB flash drive can be used or not depends on the fact, if the manufacturer has added a special information like a kind of a Serial Number of the USB flash drive.

If a module with a license per PC is used, the usage of the USB flash drive can be limited to a specified number of PCs.

Pros/Cons

+ Works always in single user environment

+ Customer can use a single user license on different machines

+ The number of machines, where the USB flash drive can be used, can be limited

- Only usable for single user installations

- Hardware is involved

- Not all USB flash drives will work

For details how to use the USB flash drive see chapter: Using an USB flash drive as a Dongle replacement.

Settings for Activation Server

To allow a reactivation, you have to limit the reactivation exclusively to the USB flash drive.

Details

This ID can only be used as a single PC / single user license. A network license is not supported.

The USB protection works only with Windows XP and newer Windows versions like Vista / Windows 7 / Windows 8.

Licence Protector also works on USB flash drives with Microsoft BitLocker drive encryption.

This feature is only available in the Professional Edition.


Domain (12)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This installation code is a very good criteria if you need a company wide (unlimited) license with single user installations.

After a user logs in his Windows account, the Windows-Domain name is used for copy protection. This also works for notebook users which are offline, as you can always log in using the domain-name.

There are 2 options

· [image] The same license file can be copied to any machine. No additional activation is necessary after the first user has activated the product

Step 1 - Product Activation

One user activates the product and makes a backup of the license file (.LIC file).

Step 2 - Installation on multiple PCs

The .lic file can now be copied to any number of machines within the same network.

·The same Serial Number can be used within the domain for multiple product activations (see settings for Activation Server below). There are no restrictions, how often the Serial Number can be used.

Settings for Activation Server

To allow a reactivation, you have to limit the reactivation exclusively to the domain. These are the settings for the project.config file

<InstCodeType1>12</InstCodeType1>

<InstCodeType2>5</InstCodeType2> (this would be used if the network works without a domain)

<InstCodeType3>1</InstCodeType3>

<AllowReactivation>Yes</AllowReactivation>

<CheckInstCodeType1>12</CheckInstCodeType1>

<IgnoreLocalInstCodes>false</IgnoreLocalInstCodes> (definition is mandatory for reactivation using domain)

<MinIdenticalInstcodes>12</MinIdenticalInstcodes> (backup ID if no domain is available - then no reactivation is done as 12 IDs have to match)

Every workstation has to specify the same domain for login like domainname\username

This ID can only be used as a single PC / single user license. A network license is not supported.

This feature is only available in the Professional Edition.


Windows ID (13)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Windows ID includes Windows operating system information combined with hardware used on a computer system and is similar to a Windows UUID (Universal Unique Identifier). The Windows ID will be different even on virtual machines (if you clone one Windows copy and run it on a virtual machine on another computer).

The advantage of this ID is, that it will seldom change and cannot be faked. Changing the hostname, volume ID or MAC address will not affect this installation code.

Settings for Activation Server

To allow a reactivation, you have to limit the reactivation to an ID which is still the same even if Windows is reinstalled. These are the settings for the product configuration

If you use regular online checks, use hardware ID 13 instead of hardware ID 2 in the settings for reactivation.

This is the recommended installation code for single user installations

This ID can only be used as a single PC / single user license. A network license is not supported.


System ID - MAC OS X (14)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The copy protection works in the way that the license file is linked to the Serial Number of the MAC OS X.

To display the Serial Number,

·Choose About This Mac from the Apple Menu ( Apple logo on the Menu Bar))

·Double-click the version text, for example "Version 10.7"

or click on More Info on this screen

To distinguish a Serial Number Key and the Serial Number of the MAC computer it is referenced as System ID - MAC OS X in this documentation.


Use own hardware IDs
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Licence Protector supports using own hardware IDs. This makes sense if you deliver a custom made machine and you want to bind the license to this machine. The machine ID can be stored in the license file and then verified during runtime.

The workflow would be as follows.

Create a license file

You have to create a license file for each customer with special settings.

·Set the status of Activation to done

·Valid Number of Days = 0 (no time limitation)

·Type in the customer name

Implement the standard EasyGo workflow. This would allow you to also deliver license files with evaluation versions. Setting the activation status to done just suppresses the activation screens.

Store your own hardware ID

Save the hardware ID either in the in the data area of the license file (most flexible method because it allows storing multiple data) or in the Internal Marking field (TAG value) of the license file.

Details how to store the ID in the data area

Select Data Area [image] in the main screen. It allows to edit and modify data, which is stored in the data area of the license file. For full details see chapter Store data in the license file.

Select Add to add a new data entry or highlight an existing entry to Edit [image] or Remove [image] it.

Either store the values invisible in the file or select, if the data should be visible in the License Viewer.

The modification is written back in the license file when you press save and not when you close this window.

This feature is only available in the Professional Edition.

Details how to store the ID in the Internal Marking field

Switch to the detail page in the License Generator and the in your hardware ID in the field Internal marking of license file

Retrieve Value during runtime

You would use the standard EasyGo commands and retrieve your hardware ID during runtime.

For hardware IDs stored in the data area see chapter Store data in the license file how to retrieve the values.

If you use the Internal Marking field you would use the command GetVal, Token LTG to retrieve the value.


Copy Protection Violation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If a hardware ID changes, a copy protection error occurs.

If the license file is copied to another PC or the hardware of the PC changed, then a copy protection error occurs It is not possible to continue.

It is possible to try a reactivation. This covers the situation when a user has changed hardware settings. The next step is to Select the activation method and then try to reactivate. See details - Reactivation after copy protection violation. Ensure that the configuration on the Activation Server 4 is set to allow reactivation.

Source Code Settings

The following configuration settings are configured with the command SetRegisterSettings:

·ContactAddress - display e-mail or phone number in the error screen.

Error code: 1024


Custom-made User Interface (own GUI)
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports with EasyGo a workflow which will suit most requirements. However, if you want to provide your own user interface it is possible

·If you want to provide your own screens (e.g. because you need a Unicode language like Russian or Chinese) and deliver a Serial Number Key - see workflow - Serial Number - own screens. It can also be used if you do need no user interface because the application runs on the server

·If you want to provide your own screens and deliver a license file and you do not need online activation - see workflow - license File - own screens

·Create your own License Viewer

See also
Deliver license File - Own Screens
Deliver Serial Number - Own Screens
Create own License Viewer


Serial Number - Own Screens
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This workflow makes sense if you want to provide all screens in your own Look & Feel or if you have a server application which does not allow to pop-up any screens on the server.

You can implement the following workflow with the modifications you like.

Depending on the kind of activation you choose, the workflow is different.

The predefined workflow is as follows:

·Create the generic license File for the evaluation version

·Provide an evaluation version (also non-evaluation version which always needs a Serial Number is possible).

·For all start and workflow options see chapter: Worflow Options

·Customer can test within the time limited period or buy the software - screen Start Screen in Evaluation Mode

·Customer buys the software and gets the Serial Number Key. The key is unique and is the 'proof of purchase'.

·The Serial Number sets a trigger that enables activation via web(online), e-mail, fax or phone (activation methods can be defined)

·Online Activation – the Serial Number is transferred to the Activation Server 4 it is validated if the Serial Number was already used or not and copy protection is enabled, time limitation is deleted (to get an unlimited full version). The customer can work instantly with the application. A reinstallation on the same PC which already registered is accepted (configurable). Other workflows can be defined like do not activate copy protection or activate time limitation for full version

·Activation by e-mail, fax and phone requires manual activation by sending the installation code (hardware ID) to you and sending back an Unlock Key

·The application is now copy protected and without time limitation (depending on the settings)

The Video Tutorial offers a live demonstration of each activation method.

Start Video Tutorial

See also
Source Code Integration for this workflow
Create own License Viewer
Transfer a license from PC A to PC B
Block / Lock a license after Activation is done
Tamper Detection


Source Code Integration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

To implement an workflow with a Serial Number you should implement the following code sequence.

Create generic license file

The generic license file, which is included in the installation package, has exactly the same settings like the file used with EasyGo. See Create license File.

Ensure that you have set the property - Activation Status after product activation - in your project file.

Test main license

At the program start, implement the following code sequence

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareAdvanced - implement an own error handling. Error 1024 (copy protection violation) should allow to type in an Activation Key to switch copy protection type. Use SecurityLevel and PrepareForce to open the file and ShowLicViewer or an own user interface to provide the necessary information

·If you want to offer a license transfer, use CheckModuleSubscription

·Now test the main module with ValidateEX or ValidatesYes and check for time limitation with RemainingDays an/or ExpiredOn

·If the module is expired display a screen - Evaluation Period Expired. Make sure that you cover the situation if the version expires when the user already typed in a Serial Number and hasn't got the Unlock Key back

·If the status Activation is none (0) then the software does not need activation (no Serial Number was applied). Retrieve the activation status with GetWebActivation. Display a screen like this - Start Screen in Evaluation Mode

·If the status Activation is required (1) then a Serial Number was applied - display a screen to type in an Unlock Key - see Enter Unlock Key

·If the status Activation is done (2) then the software is activated - a screen should be displayed only in case of an error generated during PrepareAdvanced

·Provide an Own License Viewer

·To display errors, you could use ShowStartErrorPage, which would also cover to view the license and apply keys. You can retrieve a language specific error message with GetErrorMessage for your own dialogs. A good idea is to call PrepareAndCheck for each error as it includes screens AND error handling.

·Use Quit at the end of the application

Screen to type in a Serial Number

You can make your own screens to type in a Serial Number and offer Online Activation, e-mail, Fax or Phone Activation. The Serial Number must have the same settings like used in EasyGo - see Serial Number Key. If you want to use the e-mail Activator Service then use GetMailActivatorBlock to build then encrypted text block for the e-mail.

·To save the Serial Number in the license file use SetVal (''module ID", 'SNR', your ID / Serial Number)

·Use ApplyActivationKey (your ID / Serial Number) to read the values of the key and save it in the license file

·Save the customer name in the license file using SetVal (''", 'CST', customer name)

You have to ensure, that the key is typed in in this format: aqGEC-5EPc3-9E7Ii-3tI8X-RQU5k-6v148 . IsKeyValid will check if it is a valid key for your license file. This command would not work if you use own IDs as a Serial Number.
Screen to type in the Unlock Key

The Unlock Key must have the same settings like used in EasyGo - see Unlock Key. Just use ApplyActivationKey to save the Unlock Key.
Online Activation

The Online Activation process can be implemented with a few DLL calls. The configuration files are the same as used for EasyGo - see configure a project

The Serial number would be used as the unique ID on the Activation Server.

The sequence for the Online Activation is as follows:

·Retrieve the Serial Number using GetSerial

·Activate the license for the main module using WebRegisterExt and use as the unique ID the Serial Number

·Use SendCustomerInfo to send additional customer address information (e.g. phone number or language). The parameter ID / Serial Number must contain the Serial Number to link it with the customer address data

·You can turn on/off the activation dialogs with ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage

·By defaults all other necessary parameters are retrieved from the license file but could also be set individually

Url to Activation Server - WebServiceURL
Project name - ProjectName
Proxy Settings - LocalProxyPort, LocalProxyServer, UseLocalIEProxy, UseLocalProxy

E-mail / Fax Activation

·Use GetInstcode to retrieve the hardware ID(s)

·Retrieve the Serial Number using GetSerial

You can build the block for the automated e-mail activation using GetMailActivatorBlock. Your application has to open the default e-mail client (e.g. with mailto:) and insert the activation data like Serial Number, name and the block for automated e-mail activation.

Sample Screen Activation by e-mail

Sample Screen Activation by Fax

Activation by Phone

·Use GetInstcode to retrieve the hardware ID(s) and display all Ids on the screen

·Retrieve the Serial Number using GetSerial

Sample Screen

Test Modules

You can test a module using ValidateEX (recommended), Validate or ValidatesYes. Additional options are:

·Retrieve the module type - GetVal, Token LTY. Module type is also retrievable with GetModuleList (list of all modules within a license file)

·Retrieve module name - ModuleName. Module name is also also retrievable with GetModuleList

·Check if a module exists in a license file - ExistsModule

·Retrieve status Demo version of a module (ValidateEx)

·Retrieve time limitation of a module RemainingDays and/or ExpiredOn

·Retrieve the number of days which have been set for the trial period - NoOfDays

·Retrieve Activation Status of a module - GetWebActivation (2 = product / product activation for a module is done)

·Find out, if a module / license is deactivated using GetVerificationOfModule (result: frozen = 2)

·You can add modules (AddModule) to the license file or remove modules (DeleteModule) . This is necessary if you e.g. install an update of the application with new features

For modules which are from type user, PC, concurrent, Item counter you can

·Retrieve number of licenses and available licenses of a network module - TotalLicences and RemainingLicences. If the module is from type counter then you get the value of the counter with TotalLicences

·Retrieve all entries / user / computer - GetEntriesOfModule

·Deactivate an entry / user / computer - DeactivateEntry

·Activate an entry / user / computer again - ActivateEntry

·Delete all entries / users / computers - RemoveAllItems

·Delete all deactivated entries / user / computer - RemoveDeactivated

·Check if a specified entry / user / computer exists - ExistsEntry

·Check if an entry / user / computer is in use or deactivated - IsEntryActivated

Recommendations

You should provide a function to view the license information. Either provide the License Viewer or implement an own viewer.

See also
Create own License Viewer
Transfer a license from PC A to PC B
Block / Lock a license after Activation is done
Tamper Detection


License File - Own Screens
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This workflow makes sense if you want to provide all screens in your own Look & Feel, you do not need online activation and you want to deliver a license file.

This scenario works as follows:

·Evaluation Version with generic license file. Use the same settings like EasyGo

·Customer buys the product - the installation code is displayed in your screen

·Installation code is transferred

·A customer specific license file including copy protection turned on is generated and sent back to the customer

·Customer copies license file to the installation directory

Create generic license file

The generic license file, which is included in the installation package, has exactly the same settings like the file used with EasyGo. See Create license File.

Test Evaluation Version and display installation code

At the program start, implement the following code sequence

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareAdvanced - implement an own error handling. Error 1024 (copy protection violation) should allow to type in an Activation Key to switch copy protection type. Use SecurityLevel and PrepareForce to open the file and ShowLicViewer or an own user interface to provide the necessary information

·Now test the main module with ValidateEX or ValidatesYes and check for time limitation with RemainingDays an/or ExpiredOn

·If the status Activation is none (0) then the software needs activation. Retrieve the activation status with GetWebActivation

·Display at least 2 installation codes (Hardware Ids) to register the software. Multiple codes are necessary in case one code can not be retrieved. Use GetInstcode to retrieve the code

·If the status Activation is done (2) then the software is activated

·To display errors you could use ShowStartErrorPage, which would also cover to view the license and apply keys. You can retrieve a language specific error message with GetErrorMessage for your own dialogs

·Use Quit at the end of the application

Customer buys software

The customer has to transmit the 8 digit installation code. The next step is to create a customer specific license file (using the customer name, the installation code and all the modules the customer has bought). Important settings are:

·Set the field status of Activation to Done

·If the full version should have no time limitation, set Valid number of days to 0, Demo version to No and all other modules to the customer specific values.

·Select the desired Copy Protection method and type in the installation code the customer sent to you.

Click to enlarge

Generator - customer specific licence file

Each license file gets a new license file ID (like a Serial Number).

Now send the license file to the customer. As the copy protection is already switched on, the file can only be used on the licensed machine and the customer just has to copy the file to the installation directory.

Test Modules

You can test a module using ValidateEX (recommended), Validate or ValidatesYes

·Retrieve the module type - GetVal, Token LTY. Module type is also retrievable with GetModuleList (list of all modules within a license file)

·Retrieve module name - ModuleName. Module name is also also retrievable with GetModuleList

·Check if a module exists in a license file - ExistsModule

·Retrieve status Demo version of a module (ValidateEx)

·Retrieve time limitation of a module RemainingDays and/or ExpiredOn

·Retrieve the number of days which have been set for the trial period - NoOfDays

·Retrieve Activation Status of a module - GetWebActivation (2 = product / product activation for a module is done)

·Find out, if a module / license is deactivated using GetVerificationOfModule (result: frozen = 2)

·You can add modules (AddModule) to the license file or remove modules (DeleteModule) . This is necessary if you e.g. install an update of the application with new features

For modules which are from type user, PC, concurrent, Item counter you can

·Retrieve number of licenses and available licenses of a network module - TotalLicences and RemainingLicences. If the module is from type counter then you get the value of the counter with TotalLicences

·Retrieve all entries / user / computer - GetEntriesOfModule

·Deactivate an entry / user / computer - DeactivateEntry

·Activate an entry / user / computer again - ActivateEntry

·Delete all entries / users / computers - RemoveAllItems

·Delete all deactivated entries / user / computer - RemoveDeactivated

·Check if a specified entry / user / computer exists - ExistsEntry

·Check if an entry / user / computer is in use or deactivated - IsEntryActivated

Recommendations

You should provide a function to view the license information. Either provide the License Viewer or implement an own viewer.

See also
Create own License Viewer


Create own License Viewer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to provide an License Viewer with your own Look & Feel, implement a new menu item like Help, Show License Information. First have a look at the inbuilt License Viewer. Your Viewer could offer the following options:

·The name of the license holder - GetCustomer

·List of installation codes - GetInstcode

·The installation type used for copy protection - GetCopyProtection

·The license file ID - GetLicFileID

·An option to apply Activation Keys - ApplyActivationKey

·Turn on error log - SetLogging

·All modules - GetModuleList

·Reload license file content in case you want to update the data in your viewer - Refresh

You can also display detail information for each module:

·Retrieve the module type - GetVal, Token LTY. Module type is also retrievable with GetModuleList (list of all modules within a license file)

·Retrieve module name - ModuleName. Module name is also also retrievable with GetModuleList

·Check if a module exists in a license file - ExistsModule

·Retrieve status Demo version of a module (ValidateEx)

·Retrieve time limitation of a module RemainingDays and/or ExpiredOn

·Retrieve the number of days which have been set for the trial period - NoOfDays

·Retrieve Activation Status of a module - GetWebActivation (2 = product / product activation for a module is done)

·Find out, if a module / license is deactivated using GetVerificationOfModule (result: frozen = 2)

·You can add modules (AddModule) to the license file or remove modules (DeleteModule) . This is necessary if you e.g. install an update of the application with new features

For modules which are from type user, PC, concurrent, Item counter you can

·Retrieve number of licenses and available licenses of a network module - TotalLicences and RemainingLicences. If the module is from type counter then you get the value of the counter with TotalLicences

·Retrieve all entries / user / computer - GetEntriesOfModule

·Deactivate an entry / user / computer - DeactivateEntry

·Activate an entry / user / computer again - ActivateEntry

·Delete all entries / users / computers - RemoveAllItems

·Delete all deactivated entries / user / computer - RemoveDeactivated

·Check if a specified entry / user / computer exists - ExistsEntry

·Check if an entry / user / computer is in use or deactivated - IsEntryActivated


Different delivery scenarios
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports with EasyGo a workflow which will suit most requirements. However, there are scenarios which make sense to deliver a license file, a file and activation keys or use a custom-made user interface, e.g.

·If you have more than 5 modules it makes sense to deliver a license file. Otherwise the user would have to type in an Activation Key per module. The EasyGo workflow is used - see workflow -license File with EasyGo

·If you want to deliver a file without Copy Protection

·Deliver a Password Key to unlock the software without using copy protection

· Activation without user interaction

See also
Deliver license file and Serial Number
Deliver license file with Copy Protection
Deliver license file without Copy Protection
Deliver Password Key


Deliver Licence File with Copy Protection

Navigation: Part II - Enhanced Features > Different delivery scenarios:

Deliver license File with Copy Protection

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to deliver a license file with copy protection already activated, you need the installation codes before you deliver the software. Either

·Your customer installs the software in advance and you display the installation codes using the License Viewer or

·You create a small exe file which just displays the hardware IDs using the command GetInstCode. Note: The tool needs to open a license file to retrieve the installation codes

After retrieving the installation codes from the end user, create a customer specific license file:

·Type in the customer name

·Set the status of Activation to done

·Valid Number of Days = 0 (no time limitation)

·Select the Copy Protection Option and type in the Installation Code. This would require that the user has already installed your application. The installation codes are displayed in the License Viewer and/or the EasyGo screens (Show licenseInformation)

·Set all modules to the values the customer has bought

Implement the standard EasyGo workflow. This would allow you to also deliver license files using activation with a Serial Number. Setting the activation status to done just suppresses the activation screens.


Deliver Licence File without Copy Protection

Navigation: Part II - Enhanced Features > Different delivery scenarios:

Deliver license File without Copy Protection
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to deliver a license file without copy protection and just use licensing options like network license, then

·Copy Protection = none

·Type in the customer name

·Set the status of Activation to done

·Valid Number of Days = 0 (no time limitation)

·Set all modules to the values the customer has bought

Implement the standard EasyGo workflow. This would allow you to also deliver license files using copy protection. Setting the activation status to done just suppresses the activation screens.


Deliver Password Key without Copy Protection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to provide a key to start the software but you do not need copy protection, you can implement this workflow using Licence Protector. The key is then just a kind of 'Password Key' and can be passed to other users. The encryption of the key ensures that:

·The key can only be used for the specified application

·The key can only be used for the specified module

To distinguish this key from other keys like Serial Number or Unlock Key, it is referenced as Password Key.

To implement this workflow, you could use the following code sequence.

Create generic license file

The generic license file, which is included in the installation package, has exactly the same settings like the file used with EasyGo. See Create license File.

Test main license

At the program start, implement the following code sequence

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareForce - implement an own error handling

·Now test the main module with ValidateEX or ValidatesYes and check for time limitation with RemainingDays an/or ExpiredOn

·If the module is expired display a screen - Evaluation Period Expired

·If the status Activation is none (0) then the software is in the original state. (no Password Key was applied). Retrieve the activation status with GetWebActivation. Display a screen to type in the Password Key and user name.

·To save the Password Key in the license file use ApplyActivationKey. To save the user name use SetVal, Token CST

The Password Key needs the following settings:

Additional Options

·To display errors you could use ShowStartErrorPage, which would also cover to view the license and apply keys. You can retrieve a language specific error message with GetErrorMessage for your own dialogs

·Use Quit at the end of the application


Activation without user interaction
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case you deliver the software preinstalled on PC's or you want to activate the software during the first program start without user interaction, there are 2 options:

· Activate Online using the same Serial Number

· Activate copy protection using DLL commands


Activate Online using same Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case you deliver single user installations in a huge number to one company and online access is always available, a product activation without user interaction is possible. The workflow could also be used for standard single user installations, if always an online access is available and a trial version is not needed.

·The Serial Number is already stored in the the license file. On the activation server is a definition, how often this Serial Number can be used

·During the program start, the Serial Number is retrieved, sent to the activation server and the result is a product, which is instantly activated

·If the company needs more licenses, just increase the number of activations on the Activation Server 4

Workflow in Detail

·Create a new license file in the Generator which is time limited. Save the file.

·Create a Serial Number in the Generator. It is important to save the the Serial Number in the file

Click to enlarge

Save Serial Number in the license file

·Add this Serial Number on the Activation Server and define, how often the Serial Number can be used - see Add a key on the Activation Server

Code Integration

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareAdvanced - implement an own error handling. Error 1024 (copy protection violation) should allow to type in an Activation Key to switch copy protection type. Use SecurityLevel and PrepareForce to open the file and ShowLicViewer or an own user interface to provide the necessary information

·Now test the main module with ValidateEX or ValidatesYes

·If the status Activation is required (1) then the software is not activated yet. Retrieve the activation status with GetWebActivation

Activate the product online
The Online Activation process can be implemented with a few DLL calls. The configuration files are the same as used for EasyGo - see configure a project

The Serial number would be used as the unique ID on the Activation Server.

Use the command: GetSerial

The command SetRegisterSerialNo would display this Serial Number as a default value in the activation dialogues when using the PrepareAndCheck command

The sequence for the Online Activation is as follows:

·Activate the license for the main module using WebRegisterExt and use as the unique ID the Serial Number

·You can turn on/off the activation dialogs with ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage

·By defaults all other necessary parameters are retrieved from the license file but could also be set individually

Url to Activation Server - WebServiceURL
Project name - ProjectName
Proxy Settings - LocalProxyPort, LocalProxyServer, UseLocalIEProxy, UseLocalProxy

·If the status Activation is done (2) then the software is activated - a screen should be displayed only in case of an error generated during PrepareAdvanced

·If the status Activation is erroneous (3) then the activation was not successful. Try to activate again.

·Provide an Own License Viewer

·To display errors, you could use ShowStartErrorPage, which would also cover to view the license and apply keys. You can retrieve a language specific error message with GetErrorMessage for your own dialogs

·Use Quit at the end of the application


Activate Copy Protection with DLL commands
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The copy protection can be activated during the first program start just using DLL commands. This feature is handy if the software is delivered preinstalled on a PC.

Code Integration

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareAdvanced - implement an own error handling. Error 1024 (copy protection violation) should allow to type in an Activation Key to switch copy protection type. Use SecurityLevel and PrepareForce to open the file and ShowLicViewer or an own user interface to provide the necessary information

·Now test the main module with ValidateEX or ValidatesYes

·If the status Activation is none (0) then the software is not activated yet. Retrieve the activation status with GetWebActivation

To activate the copy protection:

·Retrieve the installation code you want to use with GetInstCode

·Activate the copy protection with SetVal, Token ICO - set it to the value you retrieved with GetInstCode

·Set the Activation to done with SetVal, Token WST = 2


Activation without copy protection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If you want to make an online product activation using a Serial Number, but you don't want to activate copy protection, the Activation Server 4 files have to be modified as follows.

Configuration files for Activation Server

project.config file

In the project.config file, remove the parameter <InstCodeTypex>. Find a typical configuration file sample below

Workflow configuration file

In the workflow configuration file, set the parameter <CreateCopyProtectionKey> to no.

If the product activation is done by E-mail, fax or phone, the Unlock Key must have the following values

Create Unlock Key without Copy Protection using License Generator

See details: Unlock Key without Copy Protection


How TOs and FAQ
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This chapter introduces Frequently Asked Questions as well as tips and tricks.

Click on the + sign on the left side to get a complete list.


How can I print this Tutorial
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Print this tutorial

The Online Tutorial is also available as a PDF document.

You can print this tutorial - click on the link to download PDF file


Activation Server - How TOs and FAQ
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 FAQ can be found in an own Tutorial

Activation Server 4 FAQ


How do I activate Licence Protector 4?

Navigation: Part II - Enhanced Features > How TOs and FAQ:

How do I activate Licence Protector?
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See chapter - How to activate Licence Protector


How can I retrieve the Serial Number from the Licence File?

Navigation: Part II - Enhanced Features > How TOs and FAQ:

How can I retrieve the Serial Number from the license File?
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Use the command: GetSerial

The command SetRegisterSerialNo would display this Serial Number as a default value in the activation dialogues when using the PrepareAndCheck command


How can I test a Release Number?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can store the release information of your application within the license file in the field version. The field is defined in the project file with AppVersion.

The value can be retrieved with the DLL command AppVersion.

Now you just have to code, that your exe file runs only, when a specific release number is in the license file –e.g. the program release 3.06 would only start when the module Release has the value 3060. This ensures that a customer can not download the latest release from the Internet and then copy his license file to the installation directory. The new program would not run with the old license file. The value can be modified with the command AppVersion.

Combine this test with an Update Subscription module.

Change Version information in the License Generator

Version information in the License Viewer

Version information on the Activation Server 4

The version information is sent with every product activation to the Activation Server 4.


How do I create a new project file?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

For every software package you want to protect, you create an own project file. For details see Project Template.


Where do I find sample source code?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You find samples source code in the FAQ area on our website.

As the sample source code is not updated with every release, you have to change the name of the Licence Protector DLL and the ProgID. For details see Add the LicProtector410.dll to your project.

For some compilers additional information, how to integrate the DLL, is provided:

·Authorware / Director

·Access Basic

·Using C++

·Using C#

·Delphi

·Java

·PHP

·VB6

·VB.NET


How can I create an Activation Key manually?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

An Activation Key can be generated within the License Generator or using the Web Administration Interface.

Open your project template and select a module. Each Activation Key is module specific. It is not possible to create an Activation Key which modifies multiple modules. Double-Click on the column Activation Key.

A new screen opens, press New, select the values and press Generate.

See also
Detail information about Activation Keys


How do I generate a keylist?

Navigation: Part II - Enhanced Features > How TOs and FAQ:

How do I generate a key list?
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To create Serial Numbers in a batch process see Create a key list with Serial Numbers.

To create any other types of Activation Keys see Automatic License Generator documentation.


How do I create an Unlock Key?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You find all options to create an Unlock Key in the chapter Unlock Key.


How to create multiple keys for one product?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Licence Protector allows to create multiple keys for one product of an order.

Situation A

Network license and the quantity in the order is 5. By default one Activation Key with value = 5 ( user / PC / concurrent) is generated.

Configuration file for network license

The value field is multiplied with the order quantity

Situation B

Single user license and the quantity in the order is 5. You can specify with the parameter <CreateMultipleKeys> that five Activation Keys with value = 1 are generated.

Configuration file for multiple keys

The order quantity is used for the number of keys to generate. <FixedValue> has to be set to No (default value). If you have a Yes/No module then <FixedValue> is not necessary.


When does time limitation start?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Time limitation starts not with installing the program or with opening the license file - it starts with the first usage of the Validate / PrepareAndCheck call for a module.

This allows to start the time limitation for each module separately. Example:

You have 2 modules. Both modules have a trial period of 30 days.

If module A is first used on 01.01.2007, then module A expires at 30.1.2007. If module B is first used on 10.01.2007 then only module B expires at 10.02.2007.

If you want to start the trial period with the installation of the software, then invoke the application after installation and use the validate command for all modules.


How can I create my own userinterface?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector supports with EasyGo a workflow which will suit most requirements. However, there are scenarios which make sense to deliver a license file, a file and activation keys or use a custom made user interface. For details see - Different Workflows - custom-made User Interface.


How to unlock the System Date Lock?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If the system date was tampered and the check for system date modification was enabled using CheckSysdateChanged or SysdateChanged you can use any Activation Key to unlock the version - e.g. a key which sets Demoversion to true or a key without any settings.

Before the activation key is applied the user has to turn back the date to today's date. The activation key resets the internal date check using this date as the new date to start testing again.


Which files do I have to distrubute?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You find all information about distribution in the chapter Installation and Distribution issues.


Which files do I have to copy to the Web Activation Server?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Enter topic text here.


How to edit an XML file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A lot of configuration files (e.g. the file for the project template) are in xml format. You can edit this file using any editor like notepad or Word. As an alternative, there is a nice freeware tool for xml files, which you can download here.

http://www.snapfiles.com/get/xmlnotepad.html

Start the XML notepad and select File, Open. You then see the XML file content, which is structured. The content can be easily modified and saved.


Where can I buy Licence Protector?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select your Version

Standard, Basic or Professional Edition? Check out the feature comparison matrix which version is right for you.

Buy Serial Number

You can buy Licence Protector online and instantly use it. Buy Licence Protector.

After the order process you get a license file and a download link. See How to activate Licence Protector how to unlock the trial version.


How TOs - Activation Server related
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Server 4 FAQ can be found in an own Tutorial

Activation Server 4 FAQ


How can I secure flash, PPT, PDF, Word, Audio, Video files?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To secure these types of files you need All-In-One Protector.

www.AllInOne-Protector.com


How can I secure EXE files - I don't have the source code.
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you do not have the source code of an application or a DLL cannot be used, it is not possible to use Licence Protector - use instead All-In-One Protector. It allows similar license and product activation options without the need to develop or change source code.

www.AllInOne-Protector.com


How do I uninstall Licence Protector 4

Navigation: Part II - Enhanced Features > How TOs and FAQ:

How do I uninstall Licence Protector
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To uninstall Licence Protector

·Select Start, Control Panel

·Add/Remove Programs

Search for Licence Protector 4.1 and select Remove.


I found no answer for my questions
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you did not find an answer for your questions in the tutorial search in the extensive Online Knowledge Base.

Browse Online Knowledge Base


License File upload/download

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers multiple options how to deliver license. A very interesting option is to deliver only one ID to the customer, upload the complete license file on the Activation Server 4 and then synchronize the data to the local PC / network.

·User does not have to type in Activation Keys - this simplifies the license handling

·Unlock with one ID a complete license file with any number of modules

·User can synchronize the latest license information

·Online Backup of the license file. A lost license can always be restored

·Any type of ID (like customer ID, invoice number) can be used for the download

·Workflow relies on online connection

·License information have to be updated manually. An automated update using from an order using an e-commerce provider is not possible

Find below a description about a few possible workflows:

· Deliver via license file download using EasyGo

· Deliver via license file download using own screens

· Online backup of the license file


Deliver via license file download using EasyGo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

To deliver a license file via download, the following steps are necessary:

·Create a license file with the License Generator and upload this file to the Activation Server 4

·User gets a Serial Number which he can use to download his license

·The product activation downloads the license file

·When additional modules or licenses are bought, the license is manually updated on the Activation Server 4

·User downloads updated license information

Create a license file and upload it

Load your project and configure all the license options the customer ordered. You can either create the license file with the License Generator or just copy an existing license file on the Activation Server 4.

Create a default license file, upload it with the Generator and then always copy this default license file on the Activation Server 4.

Create license file with the License Generator and upload it to the Activation Server 4

Fill in the customer details. The following settings are important.

·Type in the customer name

·Copy Protection = none

·Set all modules to the values the customer has bought

·Define time limitations only if the full version should expire after x days or if a module should expire at a specific date (example below - update subscription)

·For the main module set Status of Activation to done

Save the license file on a temporary folder (this step is mandatory).

·Create a Serial Number. You could alternatively use any ID which must just be a unique ID like order number or customer number (see use own IDs for product activation) . A Serial Number ensures, that the ID is unique. The users gets this ID to identify his license on the server

Select the TAB Activation Server and click on the Upload Server option.

This opens a new window, where you can fill out additional license file details.

·The field Encryption Code is like a password. It ensure that nobody else with knowledge of your Activation Server 4 structure can download a file. We strongly recommend using it

·File description is the name of the license file on the Activation Server 4. If this file description is empty, the name is default.

·You have to use the module ID of the main module

·Use the Serial Number or ID to identify the license

·The Send Customer Info option creates a record in the address table and assigns the address to this license

Copy a license file on the Activation Server 4

To copy an existing license file, select a license file from another customer or your default file and then click on the option: Copy License File

You then specify the Serial Number / ID, which will be used to download the license file.

User activates the software

Use the EasyGo commands (function reference EasyGo). You must use SetRegisterLictransfer with the following options:

·TransferLicence = true - this option activates the license file download

·File Description must have the same value like used in the screen to upload the license file

·Encryption Code must have the same value like used in the screen to upload the license file

The activation option should be restricted to online - SetRegisterSettings

·As the license file is modified after the download (e.g. copy protection is turned on), a good idea is to upload it. The command GetActionsOfLastPrepareAndCheck provides the 'event', when the activation was done. Use UploadLic to upload the file

If a Serial Number / ID is used, which was not previously uploaded to the Activation Server 4 and assigned to a license file, the default (=demo license) file is activated but all the customer specific modules would not be available

Modify the license file - add or change licenses

If the user buys additional modules or more network licenses, you change the license information on the Activation Server 4.

Click here for details

·Select TAB, Manage Activations and then Key List

·Click on the ID you uploaded

You get a new window

Now select your license file and edit the values.

User updates license information

Provide a menu option: Update my license

Use the following code sequence:

·Read the Serial Number using GetSerial

·Now update the license information using DownloadLic

This will download the latest license file information from the Activation Server 4

You can also offer an option to upload the license file using UploadLic.

Configuration settings on the Activation Server 4

The following values in the project.config file on the Activation Server 4 are important for the license file upload:

Configuration settings on the Activation Server 4

The following values in the project.config file on the Activation Server 4 are important for the license file upload.

You can configure these options using Administration / Setup, Product configuration

There are additional options for for the license file

·Allow multiple license files per ID - MultipleLVS

·License file default name - LvsDefaultName

·License file upload overwrites server license file - LvsOverwriteServerChanges


Deliver via license file download using own screens
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

To deliver a license file via download, the following steps are necessary:

·Create a license file with the License Generator and upload this file to the Activation Server 4

·User gets a unique ID which he can use to download his license. This can be a customer number, invoice number or just a Serial Number

·User downloads his license using the unique ID

·When additional modules or licenses are bought, the license is manually updated on the Activation Server 4

·User downloads updated license information

Template demo-easygo-fileupload.xml template

You find a new template on the folder ..\Licence Protector\3.0\EasyGo.

Ensure that you have set the property - Activation Status after product activation - in your project file.

Use this template for all your tests.

Create a license file and upload it

Load your project and configure all the license options the customer ordered.

Create a default license file, upload it with the Generator and then always copy this default license file on the Activation Server 4. You can either create the license file with the License Generator or just copy an existing license file on the Activation Server 4.

Create license file with the License Generator and upload it to the Activation Server 4

Fill in the customer details. The following settings are important.

·Type in the customer name

·Copy Protection = none

·Set all modules to the values the customer has bought

·Define time limitations only if the full version should expire after x days or if a module should expire at a specific date (example below - update subscription)

·For the main module set Status of Activation to done

Save the license file on a temporary folder (this step is mandatory).

Select the TAB Activation Server and click on the Upload Server option.

This opens a new window, where you can fill out additional license file details.

·The field Encryption Code is like a password. It ensure that nobody else with knowledge of your Activation Server 4 structure can download a file. We strongly recommend using it

·File description is the name of the license file on the Activation Server 4. If this file description is empty, the name is default.

·You have to use the module ID of the main module

·The SerialNo/ID must just be a unique ID like order number, customer number or a Serial Number. A Serial Number just ensures, that the ID is unique but has no other purpose. It does not change the license file settings, e.g. modify number of network users. The users gets this ID to identify his license on the server

·The Send Customer Info creates a record in the address table and assigns the address to this license

Copy a license file on the Activation Server 4

To copy an existing license file, select a license file from another customer or your default file and then click on the option: Copy License File

You then specify the Serial Number / ID, which will be used to download the license file.

User downloads the license and activates the product

The user can now download the license and activate the product, using the unique ID.

Provide a menu option: Activate license with a dialogue, where the user can type in his unique ID

·Open the license file on the local system with PrepareAdvanced

·To download the license file and activate the software use WebregisterExt. As ID use the unique ID / Serial Number the user typed in. As module ID use the module ID of your main module. Set the parameter RequestLicData to true to ensure, that the license file is downloaded. This command will always connect to the Activation Server 4, download the license file (if specified) and activate the product.

For activation, the workflow rule defined on the Activation Server 4 is used - see Project.config file

·Use SendCustomerInfo to send customer address information. The parameter ID / Serial Number must contain the Serial Number to link it with the customer address data

·To save the unique ID / Serial Number in the license file use SetVal (''module ID", 'SNR', your ID / Serial Number)

·Save the customer name in the license file using SetVal (''", 'CST', customer name)

·Now make a backup of the license file. Use UploadLic to make a backup of the activated license file

Regular application start

When your application starts, always use the following code sequence to make the basic license check:

· SetLanguage - define language for all screens and error messages. Necessary even if you use own screens

·Open the license file with PrepareAdvanced - implement an own error handling. Error 1024 (copy protection violation) should allow to type in an Activation Key to switch copy protection type. Use SecurityLevel and PrepareForce to open the file and ShowLicViewer or an own user interface to provide the necessary information

·Test if the license was deactivated or a regular online check is necessary using CheckModuleSubscription. This would only initiate an online check in case the license was locked, transferred or if a regular online check is due

·Now test the main module with ValidateEX or ValidatesYes and check for time limitation with RemainingDays an/or ExpiredOn

·Use GetWebActivation to find out if the module is activated or not

·If the module is expired display a screen - Evaluation Period Expired

·Provide an Own License Viewer to allow the user to view his license information,

·To display errors, you could use ShowStartErrorPage, which would also cover to view the license and apply keys. You can retrieve a language specific error message with GetErrorMessage for your own dialogs

·Use Quit at the end of the application

Modify the license file - add or change licenses

If the user buys additional modules or more network licenses, you change the license information on the Activation Server 4.

Click here for details

·Select TAB, Manage Activations and then Key List

·Click on the ID you uploaded

You get a new window

Now select your license file and edit the values.

User updates license information

Provide a menu option: Update my license

Use the following code sequence:

·PrepareAdvanced to open the license file

·Read the unique ID / Serial Number using GetSerial

·Now update the license information using CheckModuleSubscription. Set ForceOnlineCheck to true (will connect to the Activation Server 4) and also set the parameter RequestLicData to true to ensure, that the license file is downloaded

This will download the latest license file information from the Activation Server 4

Transfer a license

You can transfer a complete license file to another PC.

Provide a menu option: Transfer my license

Use the following code sequence:

·PrepareAdvanced to open the license file

·Read the unique ID / Serial Number using GetSerial

·Use DeactivateModule and the main module ID to deactivate the license on the Activation Server 4. Set the parameter SendLicData to true to ensure, that the latest license file is uploaded to the activation server. The field Effective Key / ID usage is now set to 0 so that the unique ID can be used on another PC

·If the user would restart the application on this PC, the command CheckModuleSubscription would make an online check and reassign the license to this PC again

Use license on another PC

The user can now install the product on another PC and activate the license again. See User downloads the license and activates the product

Using multiple license files for one ID

The concept supports saving multiple license files for the same unique ID. This allows you to save backups. A good idea is to use always the same names.

Example

·The original file name of the delivery - store it with the project name and extension: delivery - e.g. demo-easygo-delivery

·A backup file - store it with the project name and extension: backup - e.g. demo-easygo-backup

Configuration settings on the Activation Server 4

The following values in the project.config file on the Activation Server 4 are important for the license file upload:

The project.config file needs the configuration setting, that only uploaded Keys / IDs are accepted. This ensures, that the user cannot use a fake ID to download the file.

· EntryRequired=true

You can configure this option using Administration / Setup, Product configuration

There are additional options for for the license file

·Allow multiple license files per ID - MultipleLVS

·License file default name - LvsDefaultName

·License file upload overwrites server license file - LvsOverwriteServerChanges


Online backup of license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To make an online backup of the license file, just upload the license file after the product activation or offer a menu item with Upload and Download license file.

As you need a unique ID, you can either use the Serial Number or another ID you have stored in the customer system.

·To upload a license file use UploadLic

·To download a license file use DownloadLic. Set the parameter DownloadFull to true to ensure, that you download the full file and not only changes

·A good idea is to upload a license file directly after an activation was done (see GetActionsOfLastPrepareAndCheck)

·You can suppress any screen message using ShowWAStartPage, ShowWAPorgressPage and ShowWAResultPage

·The date of the last successful file upload is displayed in the License Viewer


Lock a license / Regular Online checks / Subscriptions

Navigation: Part II - Enhanced Features:

Lock or revoke a license / Regular Online checks / Subscriptions
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

It is possible to lock / revoke a license after the activation is done or check if a subscription or maintenance contract is still valid. This feature requires the Activation Server 4.

There is an inbuilt command which regularly checks, if the license is still valid or not.

The workflow is as follows:

·Licence Protector checks every x days online, if the license is still valid

·The license can be locked on the Activation Server 4

·The next online check detects that the license is locked and freezes the local license (error screen)

·The license can be unlocked on the the Activation Server 4 again

·The license could be activated again with a new Serial Number

·A final date to stop the license verification can be defined

A typical scenario would be to cover charge backs of credit cards. The license is checked e.g. every 30 days and the license check ends after 4 months.

An individual online check is also possible.

Implementation

· Configuration Settings

· Source Code Integration

· Lock a license on the Activation Server

· Individual Online Check

· Enable / Disable the license verification using a key

See also
Lock a license on the Activation Server
Individual Online Check


Configuration Settings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Using the feature for regular online checks requires special configuration settings in the license file and for the Activation Server 4.

Necessary settings for the project template

·Enable regular online checks with <ModuleVerification> and <EndVerification>

·Set the grace period in the project template using <SubGraceDays>

Using API commands

Instead of setting default values using the project template you can also use API commands.

·Enable regular online checks with VerificationOfModule

·Set the grace period with the command SetSubGraceDays or SetVal, Token SGD

Configuration on the Activation Server

The product configuration on the Activation Server 4 needs a special setting to define the interval of the regular online check.

Set the time period when online checks have to be performed with Regular license checks (days) - in the sample every 10 days an online check is done


Source Code Integration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Within your Source Code you use the EasyGo commands and some additional checks.

·Use SetLanguage, SecurityLevel, SetRegisterSettings

·Open your license file by starting EasyGo with PrepareAndCheck

·Check if the version is already activated because only then you need to perform the additional online check - GetWebActivation using the main module ID would return 2 = application is activated

·By default, the online check is transparent for the customer by displaying the following 3 screens.

Click on image

Start Screen (ShowWAStartPage)
Click on image

Progess Screen (ShowWAProgressPage)
Click on image

Result Screen (ShowWAResultPage)

The dialogs could be deactivated either with the settings <ShowWAStartPage>, <ShowWAProgressPage>, <ShowWAResultpage> in the project template or with the commands ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage in the source code.

If the product is already activated,

·Retrieve the Serial Number using GetSerial

·Enable the regular online check of this module with SetVerificationOfModule = 1. This is only necessary if the online check was not enabled within the project template. Note:

·The current status can be retrieved using GetVerificationOfModule. The result frozen = 2 indicates that the license was locked . Implement a reactivation screen like this: License deactivated / reactivate license.

·Perform the online check with CheckModuleSubscription (with grace period) or CheckModule (no grace period) specifying the main module number and using the Serial Number as ID, download full license should be set to false (no download of license file).

Licence Protector will go online only if the next check is due. Otherwise Licence Protector will just continue without going online. Note: GetNextVerificationOfModule will retrieve the date, when the next online check is due.

The check is documented on the Activation Server 4 with transaction type Validation.

·The next date to go online is retrieved from the product configuration - value from field Regular license checks (days). The new date for the next online verification is stored in the license file. It can be changed using NextVerificationOfModule

Program logic depending on the results of CheckModuleSubscription

·Only continue in your application if error code is 0

·If error code is 3018 then the license is locked on the Activation Server 4 (see how to lock the license). Your application should terminate. The next start of the application will always go online to check if the license is still locked

·If error code is 3001 then no online connection could be established. This error will appear only if no grace period is left (see below

Grace period

In case the connection to the Activation Server 4 fails, a grace period is activated (if value of grace period >0) . Details see CheckModuleSubscription

·Use SetSubGraceDays to overwrite the default value of the template <SubGraceDays>

·Use GetVal, Token SGD to retrieve the number of grace time in full days (integer value) - set with SetSubGraceDays

·Use GetRemainingSubgraceDays to retrieve the remaining grace time as an exact double value (e.g. 2.8765 days)

·Use GetVal, Token SGP to retrieve the expiry date/time of the grace period (date/time value)

Set the grace period to 10000 days in case you have installations which have never an online connection. This allows activating the regular license check as a general setup and the application would work with or without an online connection.

Options to control the regular online check

·It is normally sufficient to use the main module for the online check although the online check can be activated per module

·By default, the first date for the regular online check is used from the configuration file on the Activation Server 4, product configuration - Regular license check (days)

·A date for the first/next online validation could be set with NextVerificationOfModule. It also allows to retrieve the date for the next regular online check

·Get or Set the date, when the last online check is planned with EndVerificationOfModule. After this date, all checks are terminated

·The current status can be retrieved using GetVerificationOfModule

·Set the grace period with SetSubGraceDays

·The regular license check can be changed or terminated for a single key within the Key Details on the Activation Server 4


Lock a license on the Activation Server

Navigation: Part II - Enhanced Features > Lock or revoke a license / Regular Online checks / Subscriptions:

Lock license on the Activation Server
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

It is possible to lock a license or check if a subscription or maintenance contract is still valid. If the license is locked before the Serial Number key was already used, the product activation will fail. If the Serial Number key is locked after the activation was already done, then a regular online check is necessary to lock / revoke the license.

You can lock each module / feature separately.

·On the Activation Server 4 Home TAB, search for the Key / ID

·Click on the Serial Number and check the field: Is Locked


Individual Online Check
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To make an individual (not automatic) online check, use the command CheckModuleSubscription.This command just checks, if a license is locked or not. The check is logged on the Activation Server 4.

If the product is already activated,

·Retrieve the main module ID using MainModuleID

·Retrieve the Serial Number using GetSerial

·Perform the online check with CheckModuleSubscription (specifying the main module number and using the Serial Number as ID) and set the parameter ForceCheck=true

This could be used e.g. within an update to make a one time online connection to validate, if the key / ID was locked.

See also Source Code Integration for regular online checks to get a detail overview about different options.

See also
Lock a license on the Activation Server


Compare Activation Server 4 time with local PC time
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Every time, an online request is done, the server time is compared with the local computer time. The local time zone is considered in this check. If the time difference is more than 1 day (default setting), then the online check terminates with error 3014.

You can define the time difference in the project.config file with the setting TicketValidMinutes.

To ensure, that the local PC has not modified the date/time you can either:

·make a regular online check

·make an individual online check

·activate the evaluation version

and combine the online checks with the inbuilt option (offline) to check for system date modification


Limit number of program starts
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The number of program starts can be limited using a Counter module

·Add a new module and define the module type as counter = C

·Set a start value - e.g. 100

·Decrease the counter using ValidateAndDecrease

·The actual counter value can be retrieved with RemainingLicenses

·The counter stops at 0 and ValidateAndDecrease delivers an error code 32

·Use ShowMessagePage to display an customized message

Click to enlarge

Customized screen

To ensure, that the license file can not be replaced by an older backup, you have to activate Tamper Detection.

Make the counter module a time limited module. This ensures, that the user can work with the application only for a specified time or for the defined number of program starts. The event which happens first, causes the application stop.

Example

The counter is set to 100 (100 program starts) and the time limitation is 10 days.

·The application would stop after 10 days even if only 20 program starts have been made

·The application would stop immediately if 100 program starts have been made


Network license - how it works
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

It is possible to store all files (required files see files for distribution) on a network folder. Multiple users can start the application at the same time. Each user needs a read and write access to this folder.

The advantages of a network installation are?

·Centralized installation - all files are located on one machine

·Only 1 activation is necessary even if 100 users or PCs are using the application

·If additional users should be added, only one Activation Key has to be sent out

Just define the number of users or computers you want to allow to start the application.

There are 3 different kinds of network license

· License per PC

· License per User

· Floating license / concurrent user

· Network license per server

· Terminal Server / Citrix

When using a network license, the activation can be done from any PC/Client (not from the server) and it has to be done only once for all PCs. The PC/Client retrieves the hardware data (installation codes) of the server.

If you have a server application (like a service on the server) and you want to do all the testing on the server, see Network license with a Server Application.

See also

Available license Options
How to add Add additional users / licenses within a network
How do I implement concurrent user testing?
Deactivate a network license
Network license with a Server Application


Network License per PC
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license per PC uses the name of the PC (hostname) and stores this name in the license file. Once the application is started, it checks if the PC name is already stored in the license file and if not, it starts only if a free license is available. After the application has been terminated, the license is still in use.

The license file has to be on the server on a shared folder. Each application user needs a read/write access to the license file.

A PC can be removed from the license file in the License Viewer. The license is then available for another PC.

A Citrix or Terminal Server requires a special licensing. There is only one machine (hardware ID), but on this machine multiple sessions can be started. Licence Protector automatically detects, that the application runs on a Citrix or Terminal server and counts a license for each session (=PC).

Example

A home office user logs into the company network using a Citrix in the office. Licence Protector would retrieve the hostname of the home PC and would require a license for this PC.

This feature is supported for the license type per computer/seat and for concurrent user licensing. It also works in the same way for Remote Desktop. Other tools like gotomypc just transfer the screen content and mouse movements. Then no additional license is counted.

The definition in the project template for a license per PC is <ModuleType>Computer</ModuleType>.

See also

Server Application, Service, Web Application


Network License per User
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license per User uses the Windows user name and stores this name in the license file. Once the application is started, it checks if the user name is already stored in the license file and if not, it starts only if a free license is available. After the application has been terminated, the license is still in use. If a user is logged in with the same name on multiple PCs it is counted as one license.

The license file has to be on the server on a shared folder. Each application user needs a read/write access to the license file.

A user can be removed from the license file in the License Viewer. The license is then available for another user.

If a user logs in with the same user name in a network or Terminal Server / Citrix Server, a license per user would require only 1 license, because the Windows login name is used, which is the same on the local and remote PC. If a license per user should count a separate license for each session / PC, this is possible with the following command sequence:

·Retrieve Windows user name with GetLPWindowsUser - e.g. TOM

·Retrieve PC name with GetLPComputername - eg. PC1

·Add both values to one value - e.g. TOM on PC1

·Use PrepareAndCheck or Validate with this value (parameter name) and set the parameter: UseWindowsUser to false.

The definition in the project template for a license per User is <ModuleType>User</ModuleType>.

See also

Server Application, Service, Web Application


Network License per Concurrent User / Floating license
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The concurrent user license is also called floating license. It is checked, how many users have started the application at the same time. This allows buying a 5 concurrent user license and install an application on e.g. 30 PC's.

The license per concurrent user combines the PC name + Windows user name (e.g. OFFICEPC-TOM) and stores this name in the license file. The combination is necessary to count a license, even if a user is logged in with the same name on multiple PC's.

Once the application is started, it checks, if the name is already stored in the license file and if not, it starts only if a free license is available. After the application has been terminated, the license is given back by removing the name in the license file. The license is available again for another user.

The license file has to be on the server on a shared folder. Each application user needs a read/write access to the license file.

A Citrix or Terminal Server requires a special licensing. There is only one machine (hardware ID), but on this machine multiple sessions can be started. Licence Protector automatically detects, that the application runs on a Citrix or Terminal server and counts a license for each session (=PC).

Example

A home office user logs into the company network using a Citrix in the office. Licence Protector would retrieve the hostname of the home PC and would require a license for this PC.

This feature is supported for the license type per computer/seat and for concurrent user licensing. It also works in the same way for Remote Desktop. Other tools like gotomypc just transfer the screen content and mouse movements. Then no additional license is counted.

The definition in the project template for a license per concurrent user is <ModuleType>Concurrent</ModuleType>.

A concurrent user license for a server application has to be implemented differently. See network license with server application

See also
How do I implement concurrent user testing?
Server Application, Service, Web Application


Network license per Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To have a license per Server (the number of PCs are not limited), use the license per PC option and set the number of PCs to 9999 or any number which will be sufficient. You could also use a Yes/No module.


Terminal Server / Citrix
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector automatically detects, that the application runs on a Terminal Server / Citrix (only 1 server but multiple PCs are starting sessions on this server)

The following licenses are supported on a Terminal Server / Citrix:

· Licence per PC

· Licence per User

· Floating license / concurrent user

· Network license per Server


How to add additional users / licenses within a network?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To add additional licenses to an existing installation, just create an Activation Key.

·The Activation Key is generated within the Project Generator or Activation Server 4

·Select the option Additional Licenses. The number you select is added to the existing license file

·If you want to replace the existing value in the license file, select Overwrite value in license file

If you are using the Activation Server 4, use the Switch: Online Validation required to ensure, that a key can never be used twice.

For a complete overview about all options see: Create Additional Keys


Server Application, Service, Web Application
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector allows testing all license features without an user interface. If you have a server application or a service, we recommend the following implementation:

·Create one executable which is only used to activate the product and display license information. This executable can be started on the server or on a workstation

·Activate the product using EasyGo screens. To use own screens or browser based screens see: Custom-made User Interface

·Display license information using the License Viewer

·Implement the license tests on the server, using the DLL commands without user interface. You find all necessary commands in the chapter Multiple Modules or a typical integration sequence below.

You have to signal to your Client PC's error codes like no free license or evaluation period expired

·If you need to have a network license per PC, user or floating license see chapter Network license with Server Application

Source Code Integration

Find below a typical sequence for a server test

· SetLanguage

· PrepareAdvanced (opens file without user interface)

· ValidateEx(check module - see also Network license with Server Application)

· RemainingDays or ExpiredOn (check for time limitation)

· GetWebActivation to find out if the module is activated or not

·For each function / module to test use ValidateEx with a different module number

· Quit

If you use commands for online connection, disable all pop-up screens using ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage

For the complete integration see the chapter how to use own screens or how to work with license file download

You have to ensure, that your service has a write access to the license file.

See also
Custom-made User Interface (own GUI)
Create own License Viewer


Network license with Server Application
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a network license per PC, User or floating license - see Network license - how it works. This works 'out of the box' if the the licensing is done on the workstation / Client PC because the PC or username of the Client PC is used.

The main difference on a server based testing is, that the server (which makes the Licence Protector calls), has to provide the PC name or username. You could also use other unique criteria like IP address.

For a license per PC or user the only difference is, that you have to provide the pc name / user name in the call ValidateEx and set UseWindowsUser to false.

Example: iRes := lic.ValidateEx(‘D1001’, ‘user name’, false, sTag); where user name must be a unique ID to identify the Client PC / user.

Concurrent User testing with the inbuilt feature - see Network license Per Concurrent User is not available. Implement this code sequence to get a floating license with a Server Application:

·use module type 1 (per user)

·at the server start remove all users from the module using GetEntriesOfModule, DeactivateEntry and RemoveDeactivated

·if a user logs in use ValidateEx and the user ID like IP address or your application user name instead of using the windows user name - ValidateEx(‘D1001’, ‘user name’, false, sTag)

·if a user logs out delete the user in the license file (DeactivateEntry followed by RemoveDeactivated)

·if you are in an environment where your server informs you about disappeared clients (like session timeout) you simply can use this event to do also a log-out. Otherwise ping your client PC from time to time to get the information if the session is still valid


Store data in the license file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This feature allows storing encrypted data in the license file. The license file acts like a small database. There are commands to save, retrieve and delete a record.

The data area could be used to store:

"Program configuration parameters

"Usage of the application - like number of program starts or last online validation

"Additional customer information

"Other custom values you do not want to save in the registry, an ini-file or a database

It works in the way that you use an ID and assign a text to this ID, e.g. ID = LastOnlineValidation, Text = 09/09/201.

You can generate and deploy license files with already stored values or you can store information during the runtime of your program.

All values can either be displayed in the License Viewer in the section Configuration or they can be just used internally and then they are invisible in the License Viewer. Each value can have a different setting (e.g. value 1 and 3 are visible in the License Viewer, value 2 is invisible).

The ID for each record must be unique.

Click to enlarge

Values visible in the Licence Viewer in the section Configuration

There are different options, how to add and modify the data.

Store data using the License Generator

All values can be modified in the data area within the License Generator.
Store data using DLL commands

There is a complete set of API commands to read and modify the data.

Save a value

Command SetConfig. If the ID already exists, the existing value is updated with the new value. You can specify, if the value should be visible in the License Viewer or not.

Read a value

Command GetConfig

Delete a value

Command DeleteConfig

Check if a value exists

Command ExistsConfig

Check if value is visible in the License Viewer

Command IsConfigVisible
Store data stored in the project template

You can also store default data in the project template.

Details see chapter Project Template

Example

<Configs>

<Config name="CustomerID" visible="no">D83726</Config>

<Config name="BasicConfiguration" visible="yes">This is a text</Config>

</Configs>

Store data using Automatic License Generator

The Automatic License Generator can be used to add the data when a license file is created.

Order XML file

<product>

<ProductID>1</ProductID>

<Quantity>1</Quantity>

<AbsoluteLics>yes</AbsoluteLics>

<Configs>
<Config name="InvoiceNo" visible="yes">12345</Config>
<Config name="InvoiceDate" visible="yes">2008-09-15</Config>
</Configs>

</Product>

Please check the separate documentation for the Automatic License Generator.

The data area can also be changed if the license file is uploaded to the Activation Server 4, then modified and then downloaded again

· License file upload / download in the source code

· Modify license file on the Activation Server 4

Do not store large data e.g. MIME-encoded binary data like images or movies as this would significantly slow down the access to the license file. Especially with concurrent user, the license file is permanently read and updated.

This feature is only available in the Professional Edition.


Tamper Detection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a sophisticated method to detect if a license file was replaced by an old version of the file.

Tamper detection ensures, that the file can not be copied (backup) and then be restored. By default a license file can be backuped, the folder can be deleted and then the file can be copied back. As long as the hardware is the same, this is valid operation and offers an easy way for a reinstallation - see also Allow Reinstallation.

Tamper detection would detect, that the file is restored and blocks the application. To use the application again a special key is needed to unlock tamper detection.

This feature works in offline mode and can be activated to increase security. It prevents replacing a file with a previous version of the file.

If your application is in evaluation mode and the application is uninstalled and then reinstalled, this is automatically detected and Tamper Detection is not necessary for this situation.

Tamper Detection locks the complete application and you should be aware that this could results in more support calls. Also a reinstallation of the application is not possible. If you store the license file on a USB flash drive and the USB flash drive should be used on different machines, Tamper Detection can not be used.

To use Tamper Detection on Windows Vista / Windows 7 / Windows 8 or Terminal Server / Citrix you need a Licence Protector version 2.5 or higher.

See also
How does Tamper Detection work?
How to activate Tamper Detection
Reset Application


How does Tamper Detection work?
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Every license file has a Run Number that starts with 0 and is increased every time the license file is altered and stored. An older version of the same file would have a lower Run Number than a newer version.

How does Licence Protector know that once there was a higher Run Number of that file?

Well, it simply stores the latest Run Number locally in the Windows Registry. Let’s assume the Run Number inside the license file is 15 and the locally stored Run Number is 7. That is ok, because an other computer has worked with the license file and so it increased the Run Number to 15. But if the Run Number inside the file is 3 and therefore it is smaller than the locally stored Run Number 7 this is a signal that this license file is tampered.

On a stand-alone application the Run Number in the license file should always be equal to the locally stored Run Number.

The locally stored Run Number in the Registry is encoded and could not be manually modified. It also can not be moved to another machine. But it can be deleted. Then there is the same situation as before the first usage of the application: There is no locally stored Run Number. In that case Licence Protector can work with two different settings:

If the Tamper Detection Mode is set to Automatic, Licence Protector checks if the locally stored Run Number was already created on that machine. If not, there is no problem and the registry is updated. If yes we can assume that the entry was deleted and so it returns a security violation - the application stops. This check also works if the application is reinstalled, the registry is deleted and the license file is the original file from the evaluation version.

If the Tamper Detection Mode is set to Manual, Licence Protector always returns an error if no locally stored Run Number can be found. The Application now is responsible to solve that conflict. Typically it makes a WebRegisterExt call to the Web Activation Server to check if that license is already registered. If yes then it returns a security violation error, if not then it can create the entry.

Use Manual mode only if your application always has an Internet connection available.

Network Environment

If a network license is used, then the scenario is very complex because the Run Number is tracked on each machine and in case the license file is restored all machines are blocked.

To ensure that registry settings cannot be copied between computers, the system also combines the hostname with the Run Number. Changing the hostname on a PC will therefore result in a Tamper Detection violation.


How to activate Tamper Detection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

In order to use Tamper Detection you have to activate it during the generation of license file although it is possible to activate this feature later with a special Activation Key or via DLL commands.

If you always need Tamper Detection, turn in on in the Project Template. To activate Tamper Detection for a single customer you can use the License Generator or a special Activation Key.

Activation Tamper Detection in the Project Template

The definitions are done in the Project Template file, node <Default>.

TamperDetection

Set <TamperDetection>on</TamperDetection> to turn activate Tamper Detection.

Possible values are:

·off (default)

·on

TamperDetectionMode

Set <TamperDetectionMode>auto</TamperDetectionMode> to set the mode to Automatic.

Possible values are:

·off = Tamper Detection is deactivated (default)

·auto = runs in automatic mode

·manual = runs in manual mode

Do not forget to set the TamperDetectionMode to either auto or manual mode. By default it is off and therefore the functionality does not work even if you have TamperDetection turned on.

TamperDetectionGraceTimes

Set <TamperDetectionGraceTimes>0</TamperDetectionGraceTimes> as a default.

It defines how big the difference of the Run Number in the license file compared with the local value could be.

TamperDetetctionGraceTimes is by default 0 so a difference by 1 or greater between the Run Number inside the license file and the local Run Number is regarded as a security violation. If there may be a situation where low differences are allowed you can set this value.

Example

If this value is set to 1, a local Run Number 8 with a file Run Number 7 is not regarded a security violation.

Activate Tamper Detection in the Licence Generator

You can activate Tamper Detection for a single license file. Switch to the detail page and

·Check - Tamper Detection

·Select Modus of the extended Tamper detection - for values see here

Activate Tamper Detection with a key

To activate Tamper Detection for a single license file which is already delivered, you can create an Activation Key to turn on Tamper Detection in Automatic mode.

Within the License Generator, select Edit, Activation Key for Tamper Detection. Then select Activating the Tamper Detection. Additionally you could select Online Validation required and/or Unlimited Installation .

Activate Tamper Detection with DLL calls

To activate or modify Tamper Detection you can use DLL commands

· GetVal

· GetLastRunNoDate

· LicFileChanged

· licenseTampered

· RemoveLocalRunNo

· ResetLocalRunNo

· ResetGlobalRunNo

· SetVal

· TamperDetection


Transfer a license from PC A to PC B
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This feature allows to move / transfer a license with activated copy protection from a PC A to PC B. This is only necessary, when the PC, where the license file is stored, has to be replaced or a user wants to switch between a PC and notebook.

If a network PC with a license per PC or per User is replaced, this license can be deactivated within the License Viewer - see Deactivate a network license.

A license can only be transferred if the software was already activated. If the license is in evaluation mode, then no transfer is possible.

If the transfer was successful on PC A, then the license is sent to the Activation Server 4 and the local license is locked (tamper detection ensures that a restore of a license file, which was saved before the transfer was done, results in an error)). The user can now install the application on PC B and use the old Serial Number again.

Depending on the type of workflow you are using, there are 2 different implementation options for transferring a license.

· Transfer a license using EasyGo

· Transfer a license with custom-made screens

· License transfer during uninstallation of the application

In case a license transfer is not possible (e.g. because the PC was formatted) a manual license deactivation can be done on the Activation Server 4.

·In order to be able to use this feature you need the Activation Server 4

·A good idea is to automatically do the license transfer during the uninstallation of the application


Transfer a license using custom-made screens
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you do not use the EasyGo workflow but your own screens use this workflow to transfer a license.

Add a new menu item (e.g. Help, Transfer license) within your application and make the following Source Code modifications.

At the start of the application

· Activate the license transfer option using SetRegisterLicTransfer. Set option TransferLicence to true, to transfer the complete file. This command must be used before WebRegisterExt.

·Set LockIsError to true. This enables a special check to find out if an older license file was restored after a transfer was done. It would set the license to locked

· Validate - Would return error code 300 to indicate that an older license file was restored and the license was set to locked. Implement a reactivation screen like this: License deactivated / reactivate license

·You could always use GetVerificationOfModule after the validate command. The result frozen = 2 indicates that the license was locked . Implement a reactivation screen like this: License deactivated / reactivate license.

·Use CheckModuleSubscription to detect, if the local license was locked previously using the regular online check (it will automatically activate the license again if possible)

Command to transfer the license

·Retrieve main module ID with MainModuleID

·Retrieve Serial Number / ID with GetSerial. If the Serial Number / ID is empty then the license transfer is not possible as the product is not activated yet

·Transfer the license using the command DeactivateModule. Use the main module ID and your Serial Number / ID as parameter

The complete license file is uploaded to the Activation Server 4 and the license file on the local PC is locked.

If the user installs the application on PC B, he can activate the product using the same Serial Number / ID he used to activate the product on PC A

You can disable the progress screens using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage.


Using an USB stick (flash drive) as a Dongle replacement

Navigation: Part II - Enhanced Features:

Using a USB flash drive (flash drive) as a Dongle replacement
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers software copy protection with all the advantages and flexibility of a software solution. However, there are some situations where a hardware protection makes sense.

·Using one single license on multiple PCs and no online connection is available. The user can move the license from PC A to PC B using the USB flash drive

·Deliver a complete application on a USB flash drive - ready to go without the need to activate the software

·Marketing reasons - instead of receiving a CD, the user gets a USB flash drive with additional value for him

Licence Protector offers a unique protection feature using a standard USB flash drive. The license is bound to an individual ID of the USB flash drive (different for each stick), which cannot be copied. It supports all the license options of a single user license like

·Evaluation options

·Multiple Modules

and additionally the option to define,

·on how many PCs the USB stick can be used or

·how many users can start the application

This is a very handy feature as you can control the usage of the stick.

The USB flash drive solution is much better than a Dongle:

·It is favorable - the price is only a fraction of the price of an Dongle

·The customer could even use his own USB flash drive. You can send out a Serial Number and activate the license on the USB flash drive using Online, e-mail, Fax and phone activation. This is important if you deliver in multiple countries and shipping hardware is difficult

·In case of a hardware failure you can instantly issue a temporary license, where the license is stored on the local PC

Licence Protector combines the advantages of software copy protection with the advantages of hardware protection!

The USB flash drive protection can only be used as a single PC / single user license. A network license is not supported as a PC cannot retrieve the hardware information of the USB flash drive when it is used on a server.

The USB protection works with Windows XP and Windows Vista / Windows 7 / Windows 8.

This feature is only available in the Professional Edition.

See also
Deliver the USB flash drive with Copy Protection activated
Use USB flash drive of the customer
Installation Code 11
Automated USB-Stick duplication


License File - open file and license test
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The license file must be located on the USB flash drive. There is no modification in the source code necessary to use the USB flash drive protection.

In the PrepareAndCheck command you specify the path and license file name.

A good idea is to ask during installation, if the application should use a USB flash drive and then open a file dialog to browse for the drive. The installer could then copy the file to this folder. Save the path in the registry or configuration file.

If you deliver the USB flash drive, then the file would already be on the USB flash drive. The installer just needs to browse for the drive and does not copy the file.

If the complete application runs on the stick, the path would be the same path where the application starts.

To prevent, that the USB flash drive is removed after the program start, make regular license tests, e.g. every 15 minutes.


Deliver the USB-Stick with Copy Protection activated

Navigation: Part II - Enhanced Features > Using an USB stick (flash drive) as a Dongle replacement:

Deliver the USB flash drive with Copy Protection activated
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To deliver a USB flash drive with a ready to go license, there are only a few steps necessary.

Create license file

·Open the License Generator and load the project template

·Configure all modules the customer has bought

·The license should have no time limitation or demo version status. You could add a time limitation, if the software should expire after x days or on a predefined expiry date

·Activation status must be done if you use EasyGo

·Type in the customer name and save the license file on the USB flash drive

Click to enlarge

Configuration settings for USB license

Limit usage

The customer can use the license always only on the computer, where the USB flash drive is attached. The limitation by PC / user is an additional configuration setting to limit the usage.

·use a module from type computer/PC - this limits the usage to the defined number of computers (recommended option). To define an unlimited usage, just configure a license with 9999 computers

·use a module from type user- this limits the usage to the defined number of users (USB flash drive can be used only on one PC)

·use a module from type Yes/No - the USB flash drive can be used on any number of computers by an unlimited number of users

The computer license type uses the hostname to count the number of computers. As a hostname can be changed, you could use the hardware ID 13 (Windows ID) instead of the hostname or a combination of both.

·Retrieve hardware ID 13 using GetInstCode(13)

·In the command Validate or PrepareAndCheck use the hardware ID 13 as replacement for the hostname (Name = hardware ID13, UseWindowsUser = false)

·As now only a 8 digit number is displayed in the License Viewer, you could combine the hardware ID13 with the hostname - GetLPComputername - the result in the license file would e.g. be: 411B9C8E (My Computer)

Activate protection on USB flash drive

First You have to load the correct project template for the file you want to protect. Then you can add the USB protection to this file.

In the License Generator, select the Tab Extras, then USB Protection on.

This opens a dialog, where you can select the license file on the USB flash drive. The copy protection is then activated.

If the USB flash drive does not support this option, an error message is displayed:

There is no valid instcode for file filename.lic

You have to use another USB flash drive.

The copy protection can be removed from the USB flash drive. Select the menu Tab Extras, then USB Protection off This opens a dialog, where you can select the license file on the USB flash drive. The copy protection is then removed.

The option: Allow SetVal function must be checked. Otherwise you get a write protection error.

SetVal configuration - screen additional settings

SetVal configuration - screen additional settings

Automated process for large quantities

If you need large quantities of USB flash drives with a license file already activated, you can use the service of the company OEM marketing - www.oem.de. They are specialized in CD and USB duplication and they have a special license from us to add the USB flash drive protection in a batch process. You have to send them a generic license file and the project template.


Use USB-Stick of the customer

Navigation: Part II - Enhanced Features > Using an USB stick (flash drive) as a Dongle replacement:

Use USB flash drive of the customer
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

If a USB flash drive of the customer should be used, there is the same workflow with product activation using EasyGo. All activation options (online, e-mail, fax, phone) are supported. You just have to provide an option that the user can copy the generic license file to the USB flash drive. This could be done e.g. during the installation.

Serial Number

You define with the Serial Number , on how many PCs the USB flash drive can be attached.

Product Activation

The USB flash drive protection uses the installation code 11. For activation by e-mail, fax, phone nothing specific has to be considered. See chapter: Unlock Key. If the installation code 11 is empty, then the USB flash drive does not support copy protection.

Click to minimise

E-Mail Activation - No support of USB stick protection

For online activation we recommend using an own project name (e.g. product-usb) because the activation server has to use installation code 11 as the main criteria. If the USB flash drive does not support copy protection, then the license is automatically bound to the PC which makes the activation.

Recommended configuration of project.config file on the Activation Server

You can configure these options using Administration / Setup, Product configuration

Find below the settings in the .config file

<Configuration>

<Project>

<ProjectID>demo-easygo-USB</ProjectID>

<CheckActivationKeys>yes</CheckActivationKeys>

<NoOfAllowedKeyOccur>1</NoOfAllowedKeyOccur>

<CheckEntries>yes</CheckEntries>

<EntryRequired>no</EntryRequired>

<NoOfAllowedEntryOccur>1</NoOfAllowedEntryOccur>

<InstCodeType1>11</InstCodeType1>

<InstCodeType2>13</InstCodeType2> (if the USB drive does not Support copy protection, the license is bound to the PC)

<InstCodeType3>3</InstCodeType3>

<AllowReactivation>Yes</AllowReactivation>

<CheckInstCodeType1>11</CheckInstCodeType1> (for reactivation, the USB flash drive ID has to match, reactivation with an installation on the hard disk is not possible).

</Project>


Start application on the USB-Stick

Navigation: Part II - Enhanced Features > Using an USB stick (flash drive) as a Dongle replacement:

Start application on the USB flash drive
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you want to start the complete application from the USB flash drive, the Licence Protector DLL has to be loaded dynamically.

See chapter: Use DLL without registering


Automated USB flash drive duplication
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If hundreds of protected USB flash drives have to be produced, an automated process is required. The Enterprise Bundle comes with a tool, which supports an automated process.

This application has no user interface. The main purpose is to activate the copy protection on the USB flash drive without any user interaction.

The simplest way to use the application cpautomation.exe is to use a .BAT file. If you start the application without any command line parameters, you get a list of all available command line parameters.

Command Line Parameters

As the application has no user interface, it needs command line parameters. The values in red are required values

Parameter | Explanation | Example
-p | Project file name in xml format which includes the encryption and other information about the project | -p demo-easygo.xml
-lic | License file name on the USB flash drive | -lic m:demo-easygo.lic
-n | Limit number of PC's (or users). 0 uses the default license number . Details see: Limit Usage | -n 5 (this would limit to use the USB flash drive on 5 PC's or for 5 users (depending on the definition)
-c | Hardware ID - the default value is 11 = USB flash drive | not necessary
-m | Module ID of the application. Not required and reserved for future use | not necessary
-pause | will pause the screen. Necessary to trace if an error has occured |
-ep | Expiry date of the license | -ep 2014-12-31 (format must be YYYY-MM-DD)
-days | Number of days, when the license will expires. Counter begins whith the first program start | -days 363

Setup for automated duplication

Create a new folder and copy all files needed for the USB flash drive (including the license file) into this folder (e.g. name it Publish USB)

The application for the automated USB flash drive duplication includes the following files:

·cpautomation5.1.exe

·cpautomation.lic

·cpautomation.bat

Batch Process

The file cpautomation.bat defines the process. Normally this is:

·Copy the files to the USB flash drive

·Activate copy protection for the USB flash drive

You can modify this bat file and adapt it to your USB flash drive duplication facility.

If you are familiar with batch files, use example 2, otherwise edit the file cpautomation.bat and modify it like example 1.

Example 1

cpautomation.bat

copy "c:....\Publish USB\*.*" m:

cpautomation5.1.exe -p flash-demo.xml -f m:\flash-demo.lic -n 5

copy "c:....\Publish USB\*.*" n:

cpautomation.exe -p flash-demo.xml -f n:\flash-demo.lic -n 5

copy "c:....\Publish USB\*.*" o:

cpautomation.exe -p flash-demo.xml -f o:\flash-demo.lic -n 5

For each USB flash drive (typically drive letter d: to z:) you have to repeat the command line - copy the files and add the copy protection with cpautomation.exe.

Example 2

You could also start the cpautomation.bat using command line parameters. Then you do not have to change the bat file for every project.

cpautomation.exe flash-demo m: 5 (project name, drive name of the USB flash drive, number of licenses)

cpautomation.bat

copy autorun.info %1

copy %1.lic %2

copy %1.exe %2

cpautomation5.1.exe -p %1.xml -f %2\%1.lic -n %3

Useful commands for batch files

·To delete all files within a folder: ECHO Y | DEL "m:\*.*"

·To delete a specific folder: ECHO Y | RMDIR /s "foldername"

·Stop the batch script to check results: PAUSE

This feature is only available in the Enterprise Suite.


Virtual Machines
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers multiple options how you can handle the license behaviour on virtual machines. Find below some ideas.

Detect a virtual machine

The command RunsOnVirtualMachine retrieves the information, if the application is running on a virtual machine or not.

Ideas to handle virtual machines

Don't allow to start the application

If the applications detects that it runs on a virtual machine, it just stops.

Require USB flash drive for virtual machine

Using a USB flash drive protection ensures, that a clone of the virtual machine would not run as the USB flash drive can be used only on one PC. The USB flash drive protection works only for single user installations.

You can either deliver the USB flash drive with copy protection already activated or the customer can use his own USB flash drive.

To find out, if USB flash drive protection is enabled, use GetCopyProtection. It must be 11.

Regular online checks

The regular online check is the 100% solution. If the applications detects that it runs on a virtual machine, enable the regular online check. To activate the functionality with DLL commands, use SetVal, Token LVI=1. For the complete code implementation and configuration settings see chapter Regular Online checks.

If the user would run multiple clones of the virtual machine, the Activation Server 4 would have multiple entries with the same Key / ID within the same timeframe.

Example

If the interval for regular online checks is 30 days, one documented entry on the Activation Server 4 would be expected. If the Activation Server 4 would have 3 entries within 30 days, this would indicate that 2 clones with the same Key / ID are running.

You could then lock the Key / ID. The next online check would lock the complete license on the customer machine.

Evaluation Version

To prevent, that the evaluation version is installed multiple times just by using the same image (before the evaluation version was installed) you can activate the evaluation version.


Workflow - from Distribution to Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This chapter explains the workflow in detail from distribution to activation.

· Distribution

· Evaluation Version

· Activation

·Sending out keys - Serial Number and Unlock Key

If you have more than 5 modules you could deliver a customer specific license file - see license File with EasyGo


The Basics about Workflow
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Depending on the kind of activation you choose, the workflow is different.

The predefined workflow is as follows:

·Create the generic license File for the evaluation version

·Provide an evaluation version (also non-evaluation version which always needs a Serial Number is possible).

·For all start and workflow options see chapter: Worflow Options

·Customer can test within the time limited period or buy the software - screen Start Screen in Evaluation Mode

·Customer buys the software and gets the Serial Number Key. The key is unique and is the 'proof of purchase'.

·The Serial Number sets a trigger that enables activation via web(online), e-mail, fax or phone (activation methods can be defined)

·Online Activation – the Serial Number is transferred to the Activation Server 4 it is validated if the Serial Number was already used or not and copy protection is enabled, time limitation is deleted (to get an unlimited full version). The customer can work instantly with the application. A reinstallation on the same PC which already registered is accepted (configurable). Other workflows can be defined like do not activate copy protection or activate time limitation for full version

·Activation by e-mail, fax and phone requires manual activation by sending the installation code (hardware ID) to you and sending back an Unlock Key

·The application is now copy protected and without time limitation (depending on the settings)

The Video Tutorial offers a live demonstration of each activation method.

Start Video Tutorial


Generate generic Licence File

Navigation: Part II - Enhanced Features > Workflow - from Distribution to Activation:

Generate generic license File
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The demo / trail version or the full version comes always with the same generic license file. It can contain one or more modules, is time limited (option) and the Activation status has to be set to none.

The license file is created with the License Generator.

For details see - Create license File


Customer buys Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

As a proof of purchase, the customer gets a unique Serial Number.

Depending on your business workflow, there are 3 options to generate a Serial Number (manually, automatically with a key list, automatically after the order process). The Serial Number is sent to the customer. After receiving the Serial Number, the customer selects an activation method (Online, e-mail, Fax, Phone) and types in the Serial Number, name and e-mail.


Evaluation Version
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The application can be tested in an evaluation mode - details see chapter Evaluation Version


Buy Serial Number
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

As a proof of purchase, the customer gets a unique Serial Number. See how to create a Serial Number Key.

After receiving the Serial Number, the customer selects an activation method (Online, e-mail, Fax, Phone) and types in the Serial Number, name and e-mail.

If an Online Shop is used, the Serial Number Key can be generated automatically after the order process.


Activation Methods
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are 4 activation methods (Online, e-mail, Fax and Phone). The main purpose of the activation is to activate the copy protection (bind the license to the hardware of the PC / Server) and delete the time limitation, which was set to evaluation purpose.

When using a network license, the activation can be done from any PC/Client (not from the server) and it has to be done only once for all PCs. The PC/Client retrieves the hardware data (installation codes) of the server.


Online Activation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This method allows a complete automation of the process. The Activation Server 4 is required. Mirage offers as an option a hosting of the server. The Activation Server 4 also ensures that the Serial Number can be used only once (configurable).

The hardware IDs and the Serial Number is sent to the Web Activation server, verified, stored in a data base and in case the Serial Number was not used before, copy protection is activated and time limitation is deleted to allow a an unlimited program start.

Sample Screen - Enter Serial Number - Online Activation


Activation by e-mail, Phone, Fax
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

With either of this method, the customer has to send you the installation code (8 digit hardware ID), Serial Number, name, e-mail address and you have to send back the Unlock Key (Copy Protection Key). .

Note

You have to check if the Serial Number was already used or not. If the Web Activation server is installed but the customer sends the information via e-mail, Phone or Fax, then starting with version 2.5 the Unlock Key can be generated within the Web Activation interface which ensures, that the key can not be used twice.


Integration in Online Shops / E-Commerce systems
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector offers a generic integration in any shop and a ready to go integration in popular e-commerce systems.

E-Commerce integration

The following description does not cover how to make the setup for the e-commerce system. It describes the necessary steps to combine Licence Protector with these shops.

· Avangate (www.avangate.com)

· Cleverbridge ( www.cleverbridge.com )

· Element5/ShareIt ( www.element5.com , www.shareit.com )

Generic Shop Integration

In case you use a custom shop system or an e-commerce system which is not listed above use the Generic Shop integration


Avangate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The integration in the Avangate e-commerce system (www.avangate.com) can be done without programming - just by defining the desired action.

· Use Key Lists


Working with Key Lists
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If your product has just one module and it is a Yes/No module or it is always a single user installation, then you could upload key lists which are easier to handle.

If you sell a network license where each order can contain a different number of licenses, then it is not possible to work with uploaded keys. You have to create a Serial Number Key which is different per order and includes the number of licenses ordered. This option is not supported right now.

These steps are necessary to work with key lists:

· Build a key list with Serial Numbers

· Upload Serial Numbers

· Define Delivery Text

· Upload Project Files

· Define Delivery Option


Build a key list with Serial Numbers
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

First you have to build a list with Serial Numbers which are uploaded to the shop. Depending on your sales create 100 or 1000 Serial Number keys to upload.

How to create a Key List see - Create a Key List with Serial Numbers.


Upload Serial Numbers
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Login in the Avangate system and select Electronic Delivery.

Type in a List Name and select the List Type: Static

Select the button: Edit. From the key list with Serial Numbers you created - see build a key list with Serial Numbers - copy and paste the keys in the field Code. .

Click to enlarge

Add keys to key list

Important settings are:

·Uncheck Single Code

·Uncheck Allow Duplicates

·Select Quantity Sensitive


Define Delivery Text
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Edit a product and select an additional delivery information. The Activation Key will be added automatically. You can add a delivery text for multiple languages.

Click to enlarge

Add Delivery Text information

Dependent upon the Activation Key is a Serial Number Key or an Activation Key for an additional module, you can use one of the following sample texts. The Activation Key is inserted with the variable <Key>.

Serial Number Key - English

Serial Number

The Serial Number Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.

Start the application and select: I have a Serial Number and I want to activate (your product name). Enter the Serial Number Key from this e-mail (you can copy it using the clipboard), your name/company and your e-mail address. Press the button: Next. A dialog appears which verifies the Serial Number key online and activates the application.

If you don't have an Internet connection use the option: You can also request an unlock key by e-mail.

Help, how to activate the software, can be found by selecting the icon ?

Backup your license file xy.lic.

Serial Number Key - German

Seriennummer

Die Seriennummer ist ihr 'Kaufnachweis'. Diese kann nur einmal verwendet werden und benötigt eine Internet Verbindung

Starten Sie die Anwendung und wählen Sie: Ich habe eine Seriennummer und möchte (Ihr Produktname) aktivieren. Geben Sie die Seriennummer von diesem e-mail (diese kann über die Zwischenablage kopiert werden), Name/Firma und Ihre e-mail Adresse ein. Drücken Sie die Schaltfläche: Weiter. Es erscheint ein Dialogfenster, das die Seriennummer online überprüft und die Software aktiviert.

Wenn keine Internet Verbindung zur Verfügung steht wählen Sie die Option: Sie können auch per e-mail einen Freischaltschlüssel anfordern.

Hilfe, wie die Software aktiviert werden kann, ist über das Symbol ? verfügbar.

Sichern Sie die Lizenzdatei XY.lic.

Activation Key - English

Activation Key

The Activation Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.

Start (your program name) - DESCRIBE HOW TO OPEN THE License Viewer - and select Show license Information. Press the button: Activation Key. Enter the Activation Key from this e-mail (you can copy it using the clipboard). Press the button: OK. A dialog appears which verifies the Activation Key online.

Backup your license file XY.lic.

Activation Key - German

Aktivierungsschlüssel

Der Aktivierungsschlüssel ist ihr 'Kaufnachweis'. Dieser kann nur einmal verwendet werden und benötigt eine Internet Verbindung.

Starten Sie (Ihre Programm Name), BESCHREIBEN SIE WIE MAN DEN LIZENZ VIEWER AUFRUF- danach Lizenzinformationen anzeigen. Drücken Sie die Schaltfläche: Aktivierungsschlüssel. Geben Sie den Aktivierungsschlüssel von diesem e-mail (dieser kann über die Zwischenablage kopiert werden) ein. Drücken Sie die Schaltfläche: OK. Es erscheint ein Dialogfenster, das den Aktivierungsschlüssel online überprüft.

Sichern Sie die Lizenzdatei xy.lic.


Upload Project Files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Select Product Files and then press the button Browse. Select your installation package and upload the file.


Define Delivery Option
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Edit a product. In the TAB Delivery you specify that Avangate delivers your uploaded project files by download link.

·List name: select the list with your keys - see: Upload Serial Numbers

·File: select your project file in the drop down list - see: Upload Project Files


Cleverbridge
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The integration in the cleverbridge e-commerce system (www.cleverbridge.com) can be done in multiple ways:

· Use an interactive communication with the Activation Server 4 (recommended)

· Use Key Lists (single user license only)

· Use Automatic License Generator


Use communication with the Activation Server
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The cleverbridge shop can communicate with the Activation Server 4 using a https request. It generates a Serial Number / Keys and also stores the customer details on the Activation Server 4.

You find a detail explanation in the Activation Server 4 online help.


Use Key Lists
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If your product has just one module and it is a Yes/No module or it is always a single user installation, then you could upload key lists which are easier to handle.

If you sell a network license where each order can contain a different number of licenses, then it is not possible to work with uploaded keys. You have to create a Serial Number Key which is different per order and includes the number of licenses ordered. See chapter use communication with the Activation Server 4.

These steps are necessary to work with key lists:

· Build a key list with Serial Numbers

· Upload Serial Numbers

· Define Delivery Text

· Upload Project Files

· Define Delivery Option


Upload Serial Numbers
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the cleverbridge Commerce Assistant and edit a product. In the TAB Delivery Details you specify which keys are delivered.

Press the button Add and select Cleverbridge delivers key. Then select Key List and press the button [image] .

Click to enlarge

Delivery Details - select Key List

Type in a name for the key list and press the Add button - select the key list with Serial Numbers you created - see build a key list with Serial Numbers


Define Delivery Text
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Start the cleverbridge Commerce Assistant. Edit a product and add a delivery text. This text will include the Activation Key which will be generated after the order process and is used in the e-mail which is send out to the customer. The delivery text can be in HTML format.

Click to enlarge

Add Delivery Text information

Dependent upon the Activation Key is a Serial Number Key or an Activation Key for an additional module, you can use one of the following sample texts. The Activation Key is inserted with the variable <Key>.

Serial Number Key - English

<b><font size="4">Serial Number </font></b>

<p>The Serial Number Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.

</p>

<p>The Serial Number key is: <b> <Key> </b></p>

<p>Start the application and select: <b> I have a Serial Number and I want to activate (your product name).

</b>Enter the Serial Number Key from this e-mail (you can copy it using

the clipboard), your name/company and your e-mail address. Press the button: <i>

Next. </i>A dialog appears which verifies the Serial Number key online and

activates the application.</p>

<p>If you don't have an Internet connection use the option: <i>You can also

request an unlock key by e-mail.</i></p>

<p>Help, how to activate the software, can be found by selecting the icon ? </p>

<p><b>Backup your license file xy.lic</b>.</p>

Serial Number Key - German

<b><font size="4">Seriennummer</font></b><p>Die

Seriennummer ist ihr 'Kaufnachweis'. Diese kann nur einmal verwendet werden und

benötigt eine Internet Verbindung</p>

<p>Die Seriennummer lautet: <b> <Key> </b></p>

<p>Starten Sie die Anwendung und wählen Sie: <b>Ich habe eine Seriennummer und

möchte (Ihr Produktname) aktivieren<I>.

</i></b>Geben Sie die Seriennummer von diesem e-mail (diese kann über die

Zwischenablage kopiert werden), Name/Firma und Ihre e-mail Adresse ein. Drücken

Sie die Schaltfläche: <i>Weiter. </i>Es erscheint ein Dialogfenster, das die

Seriennummer online überprüft und die Software aktiviert.</p>

<p>Wenn keine Internet Verbindung zur Verfügung steht wählen Sie die Option: <i>

Sie können auch per e-mail einen Freischaltschlüssel anfordern.</i></p>

<p>Hilfe, wie die Software aktiviert werden kann, ist über das Symbol ?

verfügbar.</p>

<p><b>Sichern Sie die Lizenzdatei XY.lic</b>.</p>

Activation Key - English

<p><font size="4"><b>Activation Key</b></font></p>

<p>The Activation Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.</p>

<p>&nbsp;</p>

<p>The Activation Key is: <b> <Key> </b></p>

<p>&nbsp;</p>

<p>Start (your program name) <b> - DESCRIBE HOW TO OPEN THE License Viewer - and select <i>Show license Information</i>. Press the button: <b>

Activation Key</b>. Enter the Activation Key from this e-mail (you can copy it

using the clipboard).&nbsp; Press the button: <i>OK. </i>A dialog appears which

verifies the Activation Key online.</p>

<p><b>Backup your license file XY.lic</b>.</p>

Activation Key - German

<p><font size="4"><b>Aktivierungsschlüssel</b></font></p>

<p>Der Aktivierungsschlüssel ist ihr 'Kaufnachweis'. Dieser kann nur einmal

verwendet werden und benötigt eine Internet Verbindung.</p>

<p>&nbsp;</p>

<p>Der Aktivierungsschlüssel lautet: <b> <Key> </b></p>

<p>&nbsp;</p>

<p>Starten Sie (Ihre Programm Name), </i> BESCHREIBEN SIE WIE MAN DEN LIZENZ VIEWER AUFRUF- danach <i>

Lizenzinformationen anzeigen. </i>Drücken Sie die Schaltfläche: <b>

Aktivierungsschlüssel. </b>Geben Sie den Aktivierungsschlüssel von diesem e-mail

(dieser kann über die Zwischenablage kopiert werden) ein. Drücken Sie die

Schaltfläche: <i>OK. </i>Es erscheint ein Dialogfenster, das den

Aktivierungsschlüssel online überprüft.</p>

<p><b>Sichern Sie die Lizenzdatei xy.lic</b>.</p>


Upload Project Files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the cleverbridge Commerce Assistant. Select Product Files and then press the button Upload Product File. Select your installation package and upload the file.


Define Delivery Option
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the cleverbridge Commerce Assistant and edit a product. In the TAB Delivery Details you specify that cleverbridge delivers your uploaded project files by download link.

Press the button Add and select Cleverbridge delivers full version by download. Then select Download File and select your uploaded project file in the drop down list.


Use Automatic License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

These steps are necessary to integrate Licence Protector using the Automatic License Generator

· Build the configuration file

· Send files to Cleverbridge

· Define Delivery Text

· Upload Project Files

· Define Delivery Details

If your product module is a Yes/No module or it is always a single user installation or fix quantity (e.g. product which always is sold with quantity=5), then you could upload key lists which are easier to handle. See - Working with Key Lists.

The add-on module Automatic License Generator is required.


Build configuration file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

You can define a product (article) you want to sell with the cleverbridge program Commerce Assistant (CA). This tutorial describes only the necessary definitions for Licence Protector.

First add a new product (article) in the Cleverbridge shop. You need the ProductID from the cleverbridge shop in the configuration file.

Click to enlarge

Add product with Commerce Assistant

You can create Activation Keys or license files. All details of the configuration files can be found in the chapter Automatic License Generator.

If you use EasyGo, you can use the default configuration file, which you find in the folder ...\EasyGo\Shop-Integration.

If your main module for EasyGo is a Yes/No module then use the file config-autogenerator.xml. If the main module is from type user, PC or concurrent user, then use config-easygo-network.xml. You can modify the file using any xml Editor.

The file uploaded to cleverbridge must always have the name config-autogenerator.xml. If you have multiple products you can add any number of product definitions to this file.

The settings in the configuration file are the same settings like you would use when you make a Serial Number manually in the Generator.

Serial Number - sample Yes / No Module

In the config-autogenerator file you have to replace

·ProductID with the ProductID from cleverbridge

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the main module

Serial Number - Sample module per user / PC / concurrent or counter

In the config-autogenerator file you have to replace

·ProductID with the ProductID from cleverbridge

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the main module

·Value - should be 1 and is multiplied with the quantity of the order

·AbsoluteLics must be yes to replace the existing value in the license file (default would be to add the value)

Sample for Activation Key

For each additional module you sell, you have to build an Activation Key. This is a sample to generate an Activation Key which adds 365 days to the module update subscription. The key is validated online and can be used multiple times on the same machine.

In the config-autogenerator file you have to replace

·ProductID with the ProductID from cleverbridge

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the additional module

See also

How to create multiple keys for one product?


Send files to Cleverbridge
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

As it is not possible to directly upload the files, you have to e-mail the following files to cleverbridge (cs@cleverbridge.com):

· config-autogenerator.xml

·your project template(s) referenced in the config-autogenerator.xml file

·the Automatic License Generator for cleverbridge. The name of the file is algshopxy.exe where xy is the version number - eg. algshop410.exe. This file can be found in the folder ..\Automatic Generator

·your license file licprotector.lic from the main directory

If you do have multiple applications and they use different versions of Licence Protector, you could use for each product a different algshop.exe file from different Licence Protector versions.


Define Delivery Details

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Start the cleverbridge Commerce Assistant. In the TAB Delivery Details you specify the Automatic Generator, which the shop System invokes after the order process. See - Send files to Cleverbridge - how to upload the necessary files.

Add Key Generator

Press the button Add and select Cleverbridge delivers key. Then select Executable Key Generator and select the latest Automatic licenseGenerator. By default it has the name: algshopxy.exe where xy is the version number - e.g. algshop25.exe.

Next step is to add your download package.

Add Download Package

Press the button Add and select Cleverbridge delivers full version by download. Then select Download File and select your uploaded project file in the drop down list.


ShareIt
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The integration in the Element5 / Share-it! e-commerce system www.shareit.com) can be done in multiple ways:

· Use Key Lists (single user license only)

· Use Automatic License Generator

The Share-it! and element5 shop uses the same integration.


Working with Key Lists
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you sell a network license where each order can contain a different number of licenses, then it is not possible to work with uploaded keys. You have to create a Serial Number Key which is different per order and includes the number of licenses ordered.

See chapter - Build configuration file

These steps are necessary to work with key lists:

· Build a key list with Serial Numbers

· Upload Serial Numbers

· Define Delivery Text

· Upload Project Files

· Define Delivery Option


Upload Serial Numbers
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the Element5 / Share-it! Control Panel.

Select Key List, and then Create new list.

Now open the key list with Serial Numbers you created - see build a key list with Serial Numbers and copy all keys into the clipboard (CTRL+C). Go back to the control panel, type in a name for the key list and paste the clipboard (CTRL+V) with your Serial Number Keys.

Click to enlarge

Copy key list from clipboard

The last step is to assign the key list to a product.

Select Product Delivery, Delivery Type. On the right side select your product and press - Show data.

Press the button Add and select element5 delivers: License Key. Select your key list from Uploaded Key list and check Should a license key be sent to the customer for each license ordered?


Define Delivery Text
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Start the Element5 / Share-it! Control Panel. Edit a product and add a delivery text. This text will include the Activation Key which will be generated after the order process and is used in the e-mail which is send out to the customer. The delivery text can be in HTML format.

Click to enlarge

Add Delivery Text information

Dependent upon the Activation Key is a Serial Number Key or an Activation Key for an additional module, you can use one of the following sample texts. The Activation Key is inserted with the variable <%KEY%>.

Serial Number Key - English

<b><font size="4">Serial Number </font></b>

<p>The Serial Number Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.

</p>

<p>The Serial Number key is: <b> <%KEY%> </b></p>

<p>Start the application and select: <b> I have a Serial Number and I want to activate (your product name).

</b>Enter the Serial Number Key from this e-mail (you can copy it using

the clipboard), your name/company and your e-mail address. Press the button: <i>

Next. </i>A dialog appears which verifies the Serial Number key online and

activates the application.</p>

<p>If you don't have an Internet connection use the option: <i>You can also

request an unlock key by e-mail.</i></p>

<p>Help, how to activate the software, can be found by selecting the icon ? </p>

<p><b>Backup your license file xy.lic</b>.</p>

Serial Number Key - German

<b><font size="4">Seriennummer</font></b><p>Die

Seriennummer ist ihr 'Kaufnachweis'. Diese kann nur einmal verwendet werden und

benötigt eine Internet Verbindung</p>

<p>Die Seriennummer lautet: <b> <<%KEY%> </b></p>

<p>Starten Sie die Anwendung und wählen Sie: <b>Ich habe eine Seriennummer und

möchte (Ihr Produktname) aktivieren<I>.

</i></b>Geben Sie die Seriennummer von diesem e-mail (diese kann über die

Zwischenablage kopiert werden), Name/Firma und Ihre e-mail Adresse ein. Drücken

Sie die Schaltfläche: <i>Weiter. </i>Es erscheint ein Dialogfenster, das die

Seriennummer online überprüft und die Software aktiviert.</p>

<p>Wenn keine Internet Verbindung zur Verfügung steht wählen Sie die Option: <i>

Sie können auch per e-mail einen Freischaltschlüssel anfordern.</i></p>

<p>Hilfe, wie die Software aktiviert werden kann, ist über das Symbol ?

verfügbar.</p>

<p><b>Sichern Sie die Lizenzdatei XY.lic</b>.</p>

Activation Key - English

<p><font size="4"><b>Activation Key</b></font></p>

<p>The Activation Key is your 'proof of purchase'. It can be used only once and requires an Internet connection.</p>

<p>&nbsp;</p>

<p>The Activation Key is: <b> <%KEY%> </b></p>

<p>&nbsp;</p>

<p>Start (your program name) <b> - DESCRIBE HOW TO OPEN THE License Viewer - and select <i>Show license Information</i>. Press the button: <b>

Activation Key</b>. Enter the Activation Key from this e-mail (you can copy it

using the clipboard).&nbsp; Press the button: <i>OK. </i>A dialog appears which

verifies the Activation Key online.</p>

<p><b>Backup your license file XY.lic</b>.</p>

Activation Key - German

<p><font size="4"><b>Aktivierungsschlüssel</b></font></p>

<p>Der Aktivierungsschlüssel ist ihr 'Kaufnachweis'. Dieser kann nur einmal

verwendet werden und benötigt eine Internet Verbindung.</p>

<p>&nbsp;</p>

<p>Der Aktivierungsschlüssel lautet: <b> <%KEY%> </b></p>

<p>&nbsp;</p>

<p>Starten Sie (Ihre Programm Name), </i> BESCHREIBEN SIE WIE MAN DEN LIZENZ VIEWER AUFRUF- danach <i>

Lizenzinformationen anzeigen. </i>Drücken Sie die Schaltfläche: <b>

Aktivierungsschlüssel. </b>Geben Sie den Aktivierungsschlüssel von diesem e-mail

(dieser kann über die Zwischenablage kopiert werden) ein. Drücken Sie die

Schaltfläche: <i>OK. </i>Es erscheint ein Dialogfenster, das den

Aktivierungsschlüssel online überprüft.</p>

<p><b>Sichern Sie die Lizenzdatei xy.lic</b>.</p>


Upload Project Files
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the Element5 / Share-it! Control Panel. Select Upload Product and then either select Replace an existing file or Upload a new file. Select your installation package and upload the file.


Define Delivery Type
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Start the Element5 / Share-it! Control Panel. With Delivery Type you specify that Element5 / Share-it! delivers your uploaded project filesby download link.

Select Product Delivery, Delivery Type. On the right side select your product and press - Show data.

Press the button Add and select element5 delivers: download link for the full version full version. Then select File to be shipped and select your uploaded project file in the drop down list.


Use Automatic License Generator
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

These steps are necessary to integrate Licence Protector using the Automatic License Generator

· Build the configuration file

· Send files to Element5 / Share-it!

· Define Delivery Text

· Upload Project Files

· Define Delivery Details

If your product module is a Yes/No module or it is always a single user installation or fix quantity (e.g. product which always is sold with quantity=5), then you could upload key lists which are easier to handle. See - Working with Key Lists.

The add-on module Automatic License Generator is required.


Build configuration file
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

You can define a product (article) you want to sell with the Element5 / Share-it! program Control Panel. This tutorial describes only the necessary definitions for Licence Protector.

First add a new product (article) in the Element5 / Share-it! shop. You need the Product Number from the Element5 / Share-it! shop in the configuration file.

Click to enlarge

Add product with Control Panel

You can create Activation Keys or license files. All details of the configuration files can be found in the chapter Automatic License Generator.

If you use EasyGo, you can use the default configuration file, which you find in the folder ...\EasyGo\Shop-Integration.

If your main module for EasyGo is a Yes/No module then use the file config-autogenerator.xml. If the main module is from type user, PC or concurrent user, then use config-easygo-network.xml. You can modify the file using any xml Editor.

The file uploaded to cleverbridge must always have the name config-autogenerator.xml. If you have multiple products you can add any number of product definitions to this file.

The settings in the configuration file are the same settings like you would use when you make a Serial Number manually in the Generator.

Serial Number - sample Yes / No Module

In the config-autogenerator file you have to replace

·ProductID with the Product Number from Element5 / Share-it!

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the main module

Serial Number - Sample module per user / PC / concurrent or counter

In the config-autogenerator file you have to replace

·ProductID with the Product Number from Element5 / Share-it!

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the main module

·Value - should be 1 and is multiplied with the quantity of the order

·AbsoluteLics must be yes to replace the existing value in the license file (default would be to add the value)

Sample for Activation Key

For each additional module you sell, you have to build an Activation Key. This is a sample to generate an Activation Key which adds 365 days to the module update subscription. The key is validated online and can be used multiple times on the same machine.

In the config-autogenerator file you have to replace

·ProductID with the Product Number from Element5 / Share-it!

·ProductName with your product/article name

·ProjectFilename with your project filename

·ModuleNumber with your module number of the additional module

See also

How to create multiple keys for one product?


Send files to Element5 / Share-it!
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

As it is not possible to directly upload the files, you have to e-mail the following files to Element5 / Share-it! (authors@shareit.com or authors@element5.com)

· config-autogenerator.xml

·your project template(s) referenced in the config-autogenerator.xml file

·the Automatic License Generator for cleverbridge. The name of the file is algshopxy.exe where xy is the version number - eg. algshop410.exe. This file can be found in the folder ..\Automatic Generator

·your license file licprotector.lic from the main directory

If you do have multiple applications and they use different versions of Licence Protector, you could use for each product a different algshop.exe file from different Licence Protector versions.


Define Delivery Details
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Start the Element5 / Share-it! Control Panel. Within the option Product Delivery you specify the Automatic Generator, which the shop System invokes after the order process. See - Send files to Element5 / Share-it! - how to upload the necessary files.

Add Key Generator

Press the button Add and select element 5 delivers: License key. Then select Installed Key Generator and select the latest Automatic License Generator. By default it has the name: algshopxy.exe where xy is the version number - e.g. algshop25.exe.

Add Download Package

Start the Element5 / Share-it! Control Panel. With Delivery Type you specify that Element5 / Share-it! delivers your uploaded project files by download link.

Select Product Delivery, Delivery Type. On the right side select your product and press - Show data.

Press the button Add and select element5 delivers: download link for the full version full version. Then select File to be shipped and select your uploaded project file in the drop down list.


Special Options
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case you are not using EasyGo and you want to activate the copy protection automatically with the order process, your customer has to type in the installation code in the field additional1 during the order process. You could automate this with the following scenario:

·The customer has your demo version installed

·You make a menu item like Help, Order. If order is selected, you use the GetInstCode method to obtain the installation code

·Make a link to element5 with the installation code as a preset value for the field additional1

https://secure.element5.com/esales/checkout.html?PRODUCT[180724]=1&ADDITIONAL1[180724]=1A4D3A15&languageid=1

Then generate a complete license file using the filed additional1 for copy protection.


Field Mappings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The fields from an Element5 / Share-it! order are mapped as follows:

Element5 / Share-it! | Order file of Automatic License Generator
PURCHASE_ID | OrderID
REG_NAME if omitted then COMPANY if omitted then LASTNAME if omitted then EMAIL | RegistrationName
RESELLER | Manufacturer
REG_NAME | RegistrationName1
COMPANY | RegistrationName2
LASTNAME | RegistrationName3
EMAIL | RegistrationName4
Reseller | Manufacturer
ADDITIONAL1 | InstallationCode. If copy protection is 0 then this field is not used
PRODUCT_ID | ProductID
QUANTITY | Quantity

You can change this field mapping using the Fieldmap-entries in the product configuration file config-autogenerator.xml (see chapter Field Mappings Order file ->Configuration file)

In the sample in the product configuration section above, you find the default field mapping. If you want to switch some fields or Element5 / Share-it! adds new fields, you can adapt this new situation by creating new settings:

Example

InstallationCode

ADDITIONAL1

This is the standard setting (you probably will omit this entry). If someday there is a new info “RegistrationCode” in the order file than you can add the following entry:

InstallationCode

RegistrationCode

Note that your project configuration file does not need to contain standard mappings. If omitted, they are replaced by the built in values.

We strongly recommend setting UseManufacturerFromOrder to No. If the value is not set, the name of the reseller, who placed the order, is written to the field manufacturer in the license file. This behaviour is designed for OEM software vendors, when the name of the reseller should be displayed in the license file.


Generic Shop Integration
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

There are different options to integrate License Protector in a shop or e-commerce system.

· Use Key Lists (single user license only)

· Create keys after the order process using a https connection to the Activation Server 4


Function Reference and Error Codes
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The chapter provides an overview about all available API calls in Licence Protector.

Sample code sequences are in Delphi (Pascal) syntax. If you are not familiar with Pascal here are some hints to understand the included samples:

·Commands are separated by an semicolon

·Blocks are enclosed by keywords “begin” and “end”

·The operator for variable allocation is “:=”. The operator for compare is “=”

Licence Protector comes in 3 editions

·Starter Edition

·Basic Edition

·Professional Edition

Each function is marked with [image] to indicate, for which Edition the function is available.

If a function is only available as an option (for example the concurrent user feature is an option for the Basic Edition), then this is indicated as follows [image].


Error Codes
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Depending on the application type, there are different error or return codes

· Licence Protector DLL

· Automatic License Generator

· Activation Server 4

· Other Errors

See also
If found no answer for my questions


DLL - Error and Return codes
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Each call of Licence Protector gives you a return code. The following return codes are supported. You can use the constant value in your Source code instead of the return code.

The function GetErrorMessage gives an appropriate error message for each return code which could be used in the user dialog.

Return Code | Short description Constant value in the DLL | Error Message
0 | lplicensePassed | No error occurred
1 | lplicenseDemoMode | This version of %modulname% is a demo version
2 | lpLicFileNotRegistered | The license file %filename% could not be found or was not opened
3 | lp ModuleIsNo | Module $1 is set to 'no'
4 | lpDoNoContinue | Do not continue. This can e.g. happen if a product activation was not successful
16 | lplicenseExpired | The license of %modulname% has expired
17 | lpDemolicenseExpired | The demo license of %modulname% has expired. Flag Demoversion is set to true
32 | lpTooManyModuleUser | There is no free license of %modulname% available See common reasons for this error
64 | lpUserIsDeactivated | The license of user %username% was deactivated. Please contact your system administrator
128 | lpNoLicFileAccess | The license file %filename% could not be accessed, e.g. the user has no write permission
256 | lpModuleNotFound | The module %ModuleID% could not be found in the license file
257 | lpKeyAlreadyUsed | This Activation KeyActivation Key was already used. Request a new license key
258 | lpKeyNotReadable | The Activation KeyActivation Key could not be read
300 | lp | The license is locked
512 | Ipinvalidlicense | The license file is damaged or incomplete
1024 | lpInvalidInstCode | This is a copy protection violation. The Installation Code of the license file doesn’t match with the %ID%. See common reasons for this error
2048 | lpInvalidLicFile | The file %filename% is not a valid license file See common reasons for this error
3001 to 3099 |  | Errors in combination with the Activation Server see Activation Server error codes
4096 | lpNoUser | The user name for the module %ModuleID% %modulname% is missing
4097 | lpNoItem | The item name for the module %ModuleID% %modulname% is missing
4098 | lpEntryNotFound | Entry in module %ModuleID% could not be found.
4099 | lpInvalidType | Invalid type of module %ModuleID%.
4100 | lpModuleExists | Module %ModuleID% already exists.
4101 | lpInvalidParameter | Invalid Parameter %Parametername%.
4102 | lpInsufficientlicense | The operation is not covered with your license / Edition - e.g. with a Starter Edition you try to add multiple modules or use a copy protection which is not possible with your Edition
5000 | lpUserCancel | User cancel.
8192 | lpUnsupportedVersion | This version of the license file %filename% is not supported
8193 | lpUnknownLanguage | This language is not supported.
8194 | lpNotImplemented | Not available in this version
16382 | lpSysdateChanged | The system date was tampered and the application is locked. You can unlock the application with an Activation KeyActivation Key.
16383 | lpLicTampered | The license file was tampered! See Tamper Detection - Reset Application
16384 | lpUnhandledError | This is an unknown error. Click here for possible reasons for this error.

See also
Return codes Automatic License Generator
Activation Server 4 error codes
Other Errors
If found no answer for my questions


Automatic Licence Generator - Return Codes

Navigation: Function Reference and Error Codes > Error Codes:

Automatic License Generator - Return Codes
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Each call of Automatic License Generator in batch mode provides a return code.

Return Code | Description
0 | Success, output files successfully written
1 | No product in product configuration
2 | Product configuration could not be read. Check for a XML error
3 | No Modules for an project found
4 | Loading of module failed
5 | Inconsistent product data
6 | Inconsistent module data
7 | Order file could not be read. Check for a XML error
8 | Inconsistent order data
9 | Order process failed
10 | Writing of files failed
11 | Licence expired. Perhaps no of projects exhausted.

If the Automatic License Generator is executed in a shell (e.g. using DOS CMD), you will get a detailed description in case of an error.

Error 9

Either the project file:

·is missing

·is wrong

·the right read and create a file is missing

If this error occurs on the Activation Server 4, then check necessary rights for ASP Service.


Activation Server - error codes
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See online help: Activation Server - error codes


Other Errors
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

These are errors which are not Error Return Codes of the DLL but can occur in other situations:

·Automation object not found - Either the Licence Protector DLL is not registered or the wrong DLL is referenced in the Code - see Add the LicProtector410.dll

·EasyGo Screen - unknown Error (error code 16384). Either the Licence Protector DLL is not registered or the wrong DLL is referenced in the Code - see Add the LicProtector410.dll- Most likely you used the wrong ReadKey for this license file - Check:

- ReadKey in license file template

- ReadKey in PreapareAndCheck

·Decryption failed because the wrong security level is set with SecurityLevel or PrepareAdvanced

·Call to dllregisterserver failed with error code 0x80004005 - Either the Licence Protector DLL is not registered or the wrong DLL is referenced in the Code - see Add the LicProtector410.dll

EasyGo Screen

The activation key cannot be applied. The installation code of the license file does not match with code 0

The Unlock Key is was made using a wrong installation code.

Example

Instcodes:

01: 3F523F50

02: 3DED554A

03: 280EAE6E

04: 280EAE6E

..

If you create an Unlock Key and use 3F523F50 (=Code1) for Netbios Name (=Code 4) then you get this error.

This is not a valid Serial Number after typing in a Serial Number

Check the following settings

·The status Activation is not set to required - See Create Serial Number Key

·The module ID has wrong characters like lower case letters - see module ID

·The Activation Key was made for a different project

If you cannot find out the problem, activate the log file within the Licence Viewer (available in EasyGo on the Start Screen - Show License Information), button Options.

Online Activation Failed

This error occurs during Online activation of the product. It indicates that your project data is not uploaded on the Activation Server 4.

Check if your URL to the Activation Server is correct - see license file template, Web Service URL. If the activation never works and you always get this error, then this is 99% due to a wrong URL.

Otherwise it is a typical message when a firewall blocks the online activation. If it is a company wide firewall the system administrator would have to open port 80.

There is no free license of module xy available

This error occurs if you use a module type per PC, user or concurrent user and there is no free license available. See error screen sample.

It can also occur

·using a Terminal Server, Citrix or Remote PC session as each session counts a separate license per PC or license per concurrent user. See Network License.

·on a local PC installation with a license per user and multiple users on the PC start the application

·if a USB flash drive is used

If you use EasyGo, click on Show License information. You would see all PC's or users holding the license. It is possible to deactivate a license if it is no longer necessary.

See also: How to add Add additional users / licenses within a network

See also
List of Return / Error Codes of the DLL


Commands in Alphabetical Order
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find below a reference in alphabetical order.

See also
Function reference grouped by application range


ActivateEntry
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ActivateEntry

Purpose

Activates an existing entry (user, computer, item) in the specified module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Entryname | String | John | Name of the entry (user or computer or item)

Returncode

Returncode Type Integer | Note
0 | The entry was successfully activated
256 | The Module was not found
4098 | The Entry was not registered in that module
4099 | This module type does not have entries
32 | There is no free license.
All other values – see return codes | The operation was not successful

Usage

Activates an entry. It doesn’t matter if it is already activated!

Sample

  iRes := lic.ActivateEntry(‘D1001’, ‘John’);

  if iRes = 0 then

  begin

    << successful >>

         ...

  end

  else

  begin

     << an Error occurred >>

     ...

See also

ExistsEntry, IsEntryActivated, DeactivateEntry, GetEntriesOfModule, RemoveDeactivated

.


AddModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to add a new module in an license file. Use DeleteModule to delete an existing module.

Name

AddModule

Purpose

Generates a new Module in the license file.

Params

Parameter | Type | Example | Note
ModuleID | String | D1009 | Unique ModuleID – identifies the new module, this input is mandatory
ModuleName | String | My New Module | Name of the new module
ModuleType | Integer | 2 | Type of the new module: 1 = User, 2 = Computer, 3 = Counter, 4 = Yes/No, 5 = Item, 6 = Concurrent User (only possible if the necessary license exists)
licenses | Integer | 10 | Number of users or computers etc. In a Yes/No-Module 1 for yes and 0 for no.
IsDemo | Boolean | False | Runs that module as a demo?
Expires | Date | 0 | Date when this module will expire, 0 for unlimited
NoOfDays | Integer | 10 | Number of days this module will run after the first usage
MaxDate | Date | 2004-12-31 | Max date when this module will no longer work, even if there are open days, 0 for unlimited
Tag | String | Test | The tag value of that module
AllowDeactivate | Boolean | True | Can users, computers or items be deactivated In that module?
WebActivation | Integer | 0 | Activation status of the new module (0-3). Details
ModuleVerification | Integer | 0 | Enable regular online validation - Details
ActivationStateAfterCPon | Integer | 2 | see Activation Status after product activation
Workflow | Integer | 1 | see Workflow

Returncode

Returncode Type Integer | Note
0 | The new module was successfully created
4100 | The ModuleID already exists in the license file
4101 | One or more parameters are invalid
4099 | This module type does not exists
4102 | Your Licence Protector Edition does not allow to create modules
All other values – see return codes | The operation was not successful

Usage

Created a complete new module in the license file

Sample

  iRes := lic.AddModule(‘D1009’, ‘My new module’, 2, 10, false, 0, 10, 0, ‘My tag’, true,0,2,1);

  if iRes = 0 then

  begin

    << successful >>

         ...

  end

  else

  begin

     << an Error occurred >>

     ...

See also

DeleteModule, ExistsModule , GetModuleList, GetVal, SetVal

You can change additional module information with SetVal or retrieve it with GetVal.

If you are using EasyGo with PrepareAndCheck you have to set

· Activation State after product activation with SetVal, SAC - and the value you use in your template (typically 2)

·Workflow with SetVal, WFL - and the value you use in your template


ApplyActivationKey
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This function allows to store / apply an Activation Key in the license file in case that the License Viewer is not used.

Invoking this command without the parameter Activation Key will pop-up a dialog to type in a key. If you want to use your own dialog just provide as parameter the Activation Key.

Name

ApplyActivationKey

Purpose

Insert an Activation Key to change the properties of a module or to change the Copy Protection. Former ReadActivationKey

Params

Parameter | Type | Example | Note
Activation Key | String | dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX | A key that is 35 characters long or an empty string to open a window

Returncode

Returncode Type Integer | Note
0 | The Activation Key was successfully added to the license file
258 | The Activation Key could not be read, possibly a wrong key
257 | This Activation Key was already used
Other return codes | Operation failed, see list of return codes

Usage

Add a received Activation Key to the license file or open a dialog to let the user enter a needed key. Note: Only those keys with appropriate installation codes could be applied.

Sample

  iRes := lic.ApplyActivationKey(sTheNewKey);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

ApplyActivationKeyForProject, ApplyInvisibleKey

See also
Format of a Key
Create Keys


ApplyActivationKeyForProject
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ApplyActivationKeyForProject

Purpose

Insert an Activation Key to change the properties of a module or to change the Copy Protection. The difference to standard ApplyActivationKey is that a project name for a potential Web Activation check of the key can be delivered. This is only necessary if a different project name then the one stored in the license file should be used

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | If empty the Projectname of the license file is used
Activation Key | String | dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX | A key that is 35 characters long or an empty string to open a window

Returncode

Returncode Type Integer | Note
0 | The Activation Key was successfully added to the license file
258 | The Activation Key could not be read, possibly a wrong key
257 | This Activation Key was already used
Other return codes | Operation failed, see list of return codes

Usage

Same as ApplyActivationKey. If the key have to be checked with the Web Activation server the Projectname is used to determine the Web Activation project on the server. If Projectname is empty then the internal Projectname of the license file is used. This is exactly the same as if ApplyActivationKey is used.

Check Web Activation Documentation for further details.

Sample

  iRes := lic.ApplyActivationKeyForProject(‘My Project’, sTheNewKey);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

ApplyActivationKey, ApplyInvisibleKey

See also
Format of a Key
Create Keys


ApplyInvisibleKey
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ApplyInvisibleKey

Purpose

Insert an Activation Key to change the properties of a module or to change the Copy Protection. The difference to ApplyActivationKey is that this key is displayed in the License Viewer with *********

Params

Parameter | Type | Example | Note
Activation Key | String | dO8uc-G1iC9-jOGeA-BqgEX-U71lD-0V1VX | A key that is 35 characters long or an empty string to open a window

Returncode

Returncode Type Integer | Note
0 | The Activation Key was successfully added to the license file
258 | The Activation Key could not be read, possibly a wrong key
257 | This Activation Key was already used
Other return codes | Operation failed, see list of return codes

Usage

Add a received Activation Key to the license file or open a dialog to let the user enter a needed key. Note: Only those keys with appropriate installation codes could be applied. The entered key is in License Viewer only displayed as a sequence of stars not as the real characters. This may be useful to use general keys that should not be copied to other systems.

Sample

  iRes := lic.ApplyInvisibleKey(sTheNewKey);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

ApplyActivationKey, ApplyActivationKeyForProject

See also
Format of a Key
Create Keys


AppVersion
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The command retrieves or changes the field application version , which is stored in the license file. This information is sent to theActivation Server 4 and can be viewed per transaction.

Name

AppVersion

Purpose

Property to get or set the application version in the license file.

Params

None

Returncode

Returncode Type String | Note
Value | Version number of the application

Usage

Change / Retrieve the application version in the license file

Sample

  If lic.AppVersion = ‘3.0’ then

  begin

  end;

  ….

See also

Generator, Project Template

Version information in the License Viewer

· Version of the Licence Protector DLL

· Version of the license file


BeginCache
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command starts the cache mode for reading and writing. The license file is loaded into the computer memory and every DLL command, reading a license file value, reads the value from the memory. If a DLL command modifies a license file value, the value is changed in the memory and not on the hard disk. The cache mode can be changed with BeginReadCache, which would save changes in the license file to the hard disk.

Use this command, if values from multiple modules have to be changed to speed up the access time significantly.

Name

BeginCache

Purpose

Reads and writes all license file values in cache mode

Params

None

Returncode

Returncode Type Integer | Note
0 | The read and write cache was successfully activated. CacheMode is set to 3
Other return codes | Cache activation failed, see list of return codes

Usage

Speed up reading of multiple values in a license file

Sample

  iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginReadCache, EndCache, RefreshCache, RevertCache, WriteCache

Use this command only in a single user installation environment and not for a network license


BeginReadCache
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command starts the cache mode for reading. The license file is loaded into the computer memory and every DLL command, reading a license file value, reads the value from the memory. If a DLL command modifies a license file value, the complete license file is updated on the hard disk. The cache mode can be changed with BeginCache.

Use this command, if values from multiple modules are retrieved to speed up the access time significantly.

Name

BeginReadCache

Purpose

Reads all license file values in cache mode

Params

None

Returncode

Returncode Type Integer | Note
0 | The read cache was successfully activated. CacheMode is set to 1
Other return codes | Cache activation failed, see list of return codes

Usage

Speed up reading of multiple values in a license file

Sample

  iRes := lic.BeginReadCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginCache, EndCache, RefreshCache, RevertCache, WriteCache


CheckInterval
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

CheckInterval

Purpose

Gets the interval between two automatic checks at a concurrent user module

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | An error occurred
>= 0 | The seconds between two automatic checks in an activated concurrent user module

Usage

E.g. if you want to show the interval in a setting dialog

Sample

  iSec := lic.CheckInterval(‘D1006’);

  if iSec < 0 then

  begin

         iErr := lic.LastReturnCode;

         << react on error code >>

         ...

  end

  else

  begin

         << use the interval information >>

         ...

See also

Concurrent user modules, SetCheckInterval


CheckLicChanged
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command was replaced by the Tamper Detection feature and should not be used in applications using a DLL version 2.5 and above.

Name

CheckLicChanged

Alternative if property can not be used

Get_CheckLicChanged à WordBool

Set_CheckLicChanged(WordBool)

Purpose

Property to get or set the license file manipulation checking at function Validate

Params

None

Returncode

Returncode Type Boolean | Note
True | Checking is enabled
False | Checking is not enabled

Usage

Activate the license file manipulation checking implicitly at function Validate.

Sample

Get:

  bIsCheckOn := lic.CheckLicChanged;

  << use Boolean bIsCheckOn >>

Set:

  lic.CheckLicChanged := true;

See also

Validate, LicFileChanged


CheckLicenceID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

CheckLicenceID

Purpose

Compares the delivered ID with the license file ID.

Params

Parameter | Type | Example | Note
licenseID | Integer | 123 | The license file ID can be displayed with the License Viewer or in the License Generator

Returncode

Returncode Type Integer | Note
0 | The license ID matches the license ID in the license file
1024 | The license ID does not matches the license ID in the license file
All other values – see return codes | The operation was not successful

Usage

E.g. if you want to implement a hardware independent copy protectionCopy Protection mechanism.

Sample

  iRes := lic. CheckLicenceID(iNr);

  if iRes = 0 then

  begin

     << it matches, you can continue…>>

     ...

  end

  else

  begin

    << it does not match or there was an error >>

     ...

See also

Copy ProtectionCopy Protection, GetLicFileID


CheckModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command to make an online validation of a module and download a license file. It will connect to the Activation Server 4, download the license file (if specified) and check if the module / license was locked.

See also CheckModuleSubscription which includes a grace period.

Name

CheckModule

Purpose

Contacts the Licence Protector Web Activation server to validate a license. This function has to be used to implement “Moving licenses” and ongoing checks (“renting your software”).

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Activation Server
Module ID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number
ForceCheck | Boolean | False | If true, CheckModule will always connect to the Activation Server 4, even if it is not necessary regarding the current values
RequestLicData | Boolean | True | If set to true, the license file is downloaded from the Activation Server 4
Name | String | default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided. The password has to be set with the command UploadLic. Should be maximum 40 characters.
DownloadFull | Boolean | true | If true, the complete license file is downloaded. Otherwise only the changes made on the Activation Server 4 are downloaded and updated in the local license file. To only check a license it should be set to false

Returncode

Returncode Type Integer | Note
0 | CheckModule was successful: The online-Validation succeeded or it was not necessary to check the state online
3001 | The Activation Server 4 was not reachable.
3010 | That ID is already used e.g. by another computer.
3018 | That ID is locked.
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.CheckModule(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’,true, true);

  if iRes = 0 then

  begin

    << license successfully validated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Activation Server 4 could not be reached, please check connection >>

     ...

  end

  else if iRes = 3010 then

  begin

    << that license is already in usage. First transfer the license from the other PC to use it on this PC >>

     ...

  end

  else if iRes = 3018 then

  begin

    << that license is locked on the Activation Server 4.>>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

licenseVerification, NextVerification, Deactivatelicense, SetVerificationID, SetVerificationProduct, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname


CheckModuleSubscription
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command to make an online validation of a module, considering a grace period if no Internet connection is available and download a license file. It will connect to the Activation Server 4, download the license file (if specified) and check if the module / license was locked.

For a complete description see chapter regular online checks.

Grace Period

·If a connection to the Activation Server 4 fails, a grace period starts. You will get as a return value = 0 (OK)

·If a connection can be established during the grace period, you get the real return value and the grace period is reset

·If a connection cannot be established after the end of the grace period, you get an error code (e.g. 3001)

The grace period will only start when there is no connection to the Activation Server 4 but not on other errors like license is locked.

Setting the Grace Period

You can either set the grace period in the project template using <SubGraceDays> , SetSubGraceDays or with the command SetVal, Token SGD

Additional API commands

·Use SetSubGraceDays to overwrite the default value of the template <SubGraceDays>

·Use GetVal, Token SGD to retrieve the number of grace time in full days (integer value) - set with SetSubGraceDays

·Use GetRemainingSubgraceDays to retrieve the remaining grace time as an exact double value (e.g. 2.8765 days)

·Use GetVal, Token SGP to retrieve the expiry date/time of the grace period (date/time value)

Name

CheckModuleSubscription

Purpose

Contacts the Licence Protector Web Activation server to validate a license. This function has to be used to implement “Moving licenses” and ongoing checks (“renting your software”).

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Activation Server
Module ID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number
ForceCheck | Boolean | False | If true, CheckModuleSubscription will always connect to the Activation Server 4, even if it is not necessary regarding the current values
RequestLicData | Boolean | True | If set to true, the license file is downloaded from the Activation Server 4
Name | String | default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided. The password has to be set with the command UploadLic. Should be maximum 40 characters.
DownloadFull | Boolean | true | If true, the complete license file is downloaded. Otherwise only the changes made on the Activation Server 4 are downloaded and updated in the local license file. To only check a license it should be set to false

Returncode

Returncode Type Integer | Note
0 | CheckModuleSubscription was successful. The online-Validation succeeded or it was not necessary to check the state online. Will also return 0 if connection failed and grace period is active
3001 | The Activation Server 4 was not reachable.
3010 | That ID is already used e.g. by another computer.
3018 | That ID is locked.
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.CheckModuleSubscription(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’,true, true);

  if iRes = 0 then

  begin

    << license successfully validated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Activation Server 4 could not be reached, please check connection >>

     ...

  end

  else if iRes = 3010 then

  begin

    << that license is already in usage. First transfer the license from the other PC to use it on this PC >>

     ...

  end

  else if iRes = 3018 then

  begin

    << that license is locked on the Activation Server 4.>>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

GetRemainingSubgraceDays, SetSubGraceDays, Getval - Token SGD, SGP


DeactivateEntry
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Users / PCs / items can be deactivated using the License Viewer or with command DeactivateEntry.

The license is then available again for another user / PC / item (RemainingLicenses is increased) and the user / PC / item can never use the module again.

Name

DeactivateEntry

Purpose

Deactivates an existing entry (user, computer, item) in the specified module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Entryname | String | John | Name of the entry (user or computer or item)

Returncode

Returncode Type Integer | Note
0 | The entry was successfully deactivated
256 | The Module was not found
4098 | The Entry was not registered in that module
4099 | This module type does not have entries
All other values – see return codes | The operation was not successful

Usage

Deactivates an entry. It doesn’t matter if it is already deactivated!

Sample

  iRes := lic.DeactivateEntry(‘D1001’, ‘John’);

  if iRes = 0 then

  begin

    << successfully deactivated >>

         ...

  end

  else

  begin

     << an Error occurred >>

     ...

See also

ExistsEntry, IsEntryActivated, ActivateEntry, GetEntriesOfModule, RemoveDeactivated

Deactivated PC

You can remove the user / PC / item from the license file using RemoveDeactivated. The user / PC / item can then reuse the module again.


ConcurrentUserLevel
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Defines the method how concurrent user testing is done.

The Light version disables the heartbeat and allows to manually add (with Prepare) or remove a user.

Name

ConcurrentUserLevel

Alternative if property can not be used

Get_ConcurrentUserLevel à Integer

Set_ ConcurrentUserLevel (Integer)

Purpose

Property to get or set the concurrent user level of the licence

Params

None

Returncode

Returncode Type Integer | Note
0 | Heartbeat (default)
1 | Light (no heartbeat)

Usage

Read or set the level for all concurrent user modules in the licence.

Sample

Get:

  bIsHearbeat := (lic.ConcurrentUserLevel = 0)

  << use Boolean bIsHearbeat >>

Set:

  lic.ConcurrentUserLevel:= 1; // use no heartbeat

See also

Concurrent User mechanism


DeactivateModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command to make an online deactivation of a module and upload a license file. It will always connect to the Activation Server 4, upload the license file (if specified), lock the license on the server and lock the license in the local license file.

To find out, if a module / license is deactivated, use GetVerificationOfModule (result: frozen = 2)

Name

DeactivateModule

Purpose

Contacts the Licence Protector Web Activation server to validate a license. This function has to be used to implement “Moving licenses” and ongoing checks (“renting your software”).

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Web Activation Server
Module ID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number
SendLicData | Boolean | True | If set to true, the license file is uploaded to the Activation Server 4
Name | String | Default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided. The password is also used with the commands UploadLic, DownloadLic. Should be maximum 40 characters.

Returncode

Returncode Type Integer | Note
0 | DeactivateModule was successful
3001 | The Activation Server 4 was not reachable.
3015 | That ID could not be found in the database
3030 | The deactivation failed on the Activation Server 4
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.Module(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’,true, true,'default','this is like a password string');

  if iRes = 0 then

  begin

    << license successfully validated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Activation Server 4 could not be reached, please check connection >>

     ...

  end

  else if iRes = 3010 then

  begin

    << that license is already in usage. First transfer the license from the other PC to use it on this PC >>

     ...

  end

  else if iRes = 3018 then

  begin

    << that license is locked on the Activation Server 4.>>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

licenseVerification, NextVerification, Deactivatelicense, SetVerificationID, SetVerificationProduct, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname


DeleteConfig
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See full description - Store data in the license file

Name

DeleteConfig

Purpose

Deletes the value of the ID with the specified name in the data area of the license file

Params

Parameter | Type | Example | Note
Configname | String | DBPassword | Unique ID

Returncode

Returncode Type Integer | Note
All values | See list of return codes

Usage

Delete the ID including its value

Sample

  iRes := lic.DeleteConfig(‘DBPassword’);

  if iRes <> 0 then

  begin

     << an Error occured >>

     ...

  end

  else

  begin

     ...

See also

Store data, SetConfig, GetConfig, ExistsConfig, IsConfigVisible


DeleteModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to delete an existing module. To add a new module in an license file use AddModule.

Name

DeleteModule

Purpose

Removes a module from the license file completely.

Params

Parameter | Type | Example | Note
ModuleID | String | D1008 | Unique ModuleID – identifies the module to be removed

Returncode

Returncode Type Integer | Note
0 | Module successfully removed
256 | Module was not found in that license file
Other value | Error occurred, see list of return codes

Usage

To remove an obsolete module from your license file.

Sample

  iRes := lic.DeleteModule(‘D1008’);

  if iRes = 256 then

    << Module already deleted >>

  if iRes = 0 then

    << Module succesfully deleted >>

  ...

See also

AddModule, ExistsModule , GetModuleList, GetVal, SetVal

You can change module information with SetVal or retrieve it with GetVal


DiffPct
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

DiffPct

Purpose

Gets the tolerance in percent that is allowed for a client to do an automatic validate at a concurrent user module

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | An error occurred
>= 0 | The tolerance in percent in an activated concurrent user module

Usage

E.g. if you want to show the interval in a setting dialog

Sample

  iPct := lic.DiffPct(‘D1006’);

  if iPct < 0 then

  begin

         iErr := lic.LastReturnCode;

         << react on error code >>

         ...

  end

  else

  begin

         << use the interval information >>

         ...

See also

Concurrent user modules, SetDiffPct


DownloadLic
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows you to download a complete license file (including all hidden information) from the Activation Server 4. It can be uploaded with the command UploadLic.

This command requires a license file which was opened using one of the Prepare commands.

Name

DownloadLic

Purpose

Downloads the license file from to the Activation Server 4. A unique ID is necessary to store the license file on the Activation Server 4. If the ID already exists, the data is overwritten.

Params

Parameter | Type | Example | Note
Projectname | String | demo-easygo | Project name configured in the project.config file on the Activation Server 4. If empty the internal project name of the license file is used
ModuleID | String | QHD001 | module ID - If ModuleID is empty a CheckLicence call is used to locate the Activation
ID | String | IV0078 | unique ID to store the license file. Could be a customer ID or a Serial number
Name | String | default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided. The password has to be set with the command UploadLic. Should be maximum 40 characters.
DownloadFull | Boolean | true | If true, the complete license file is downloaded. Otherwise only the changes made on the Activation Server 4 are downloaded and updated in the local license file

Returncode

Returncode Type Integer | Note
0 | license file successfully downloaded
3001 | The Activation Server 4 was not reachable.
3014 | Most likely wrong encryption code or the length of the encryption code exceeds 40 characters or problem with the time difference between client and Activation Server 4
3015 | Key / ID does not exist. An ID was used where no license file is assigned on the Activation Server 4 . The ID must match the ID used with UploadLic
3040 | Name of the license file in combination with the used ID does not exist or the length of the encryption code exceeds 40 characters
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to download a complete license file or only modifications. The license file can be edited on the Activation Server 4 and the file has first to be uploaded using the command UploadLic.

Sample

  iRes := lic.DownloadLic(‘’, ‘QHD001’, ‘IV0078’, ‘Default’, ‘mypassword76R§",true);

if iRes = 0 then

begin

<< Licence successfully downloaded >>

...

end

else if iRes = 3001 then

begin

<< Activation Server 4 could not be reached, please check connection >>

...

end

else

begin

<< other errors >>>

...

See also

UploadLic, WebRegisterEXT

·User or PC names stored in the license file, are not downloaded. This is to ensure that the file can be downloaded on a new PC

·The hardware ID of the PC, which uploaded the file, is replaced with the hardware ID of the PC, which downloads the file

Example

·PC A has copy protection turned on with code 2 = 170D9F7C

·PC B downloads the file. Copy protection code 2 is turned on but with the hardware ID of PC B = 180A9B6A


EndCache
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command ends the cache mode. If write commands have been cached, EndCache saves the updates to the disk.

Use this command, after you have activated the cache mode with BeginCache or BeginReadCache.

Name

EndCache

Purpose

Terminates cache mode

Params

None

Returncode

Returncode Type Integer | Note
0 | The cache mode successfully terminated. CacheMode is set to 0
Other return codes | Cache mode termination failed, see list of return codes

Usage

Terminates cache mode

Sample

  iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginReadCache, BeginCache, RefreshCache, RevertCache, WriteCache


ExistsConfig
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See full description - Store data in the license file

Name

ExistsConfig

Purpose

Checks if the ID with the specified name exists in the data area

Params

Parameter | Type | Example | Note
Configname | String | DBPassword | Unique ID

Returncode

Returncode Type Boolean | Note
True | This ID exists in the license
False | This ID does not exist in the license

Usage

Use to check if that ID already exists in the data area of the license file

Sample

  bOk := lic.ExistsConfig(‘DBPassword’);

  if bOk then

  begin

         << use the information >>

         ...

  end

  else

  begin

         ...

See also

Store data, SetConfig, GetConfig, DeleteConfig, IsConfigVisible


ExistsEntry
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find out if a user / PC / item is using a license of a module.

Name

ExistsEntry

Purpose

Checks if an entry (user, computer, item) is registered in a module

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Entryname | String | John | Name of the entry (user or computer or item)

Returncode

Returncode Type Boolean | Note
True | This entry exists in the specified module
False | This entry does not exists in the specified module (or an error occurs)

Usage

E.g. if you want to check if a user is already in the module registered

Sample

  bOk := lic.ExistsEntry(‘D1001’, ‘John’);

  if bOk then

  begin

         << use the information >>

         ...

  end

  else

  begin

         ...

See also

IsEntryActivated, DeactivateEntry, ActivateEntry, GetEntriesOfModule, RemoveDeactivated

To retrieve all entries of a module use GetEntriesOfModule


ExistsModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find out if a module exists in the license file

Name

ExistsModule

Purpose

Checks if a module exists in the license file. It does not validate a module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Boolean | Note
True | This module exists in the license file
False | This module does not exists in the license file

Usage

E.g. if you want to check if a user is already in the module registered

Sample

  bOk := lic.ExitsModule(‘D1001’);

  if bOk then

  begin

         << use the information >>

         ...

  end

  else

  begin

         ...

See also

GetModuleList, AddModule, DeleteModule,

To retrieve all modules of a license file use GetModuleList


ExpiredOn
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ExpiredOn

Purpose

Gets the date when the module expires.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Date | Note
1899-12-30 representing 0 as float value | The module never expires or an error occurred. Check LastReturncode!
Other dates | Date when that module expires

Usage

E.g. to show the user when a part of your software isn’t usable any more.

Sample

  dtExpire := lic.ExpiredOn (‘D1006’);

  if dtExpire = 0 then

  begin

     iErr := lic.LastReturnCode;

     if iErr <> 0 then

     begin

         << react on error code >>

         ...

     end

     else

     begin

        << module never expires >>

        ...

     end

  end

  else

  begin

         << module expires at dtExpire >>

         ...

See also

Validate, RemainingDays


GetActionsOfLastPrepareAndCheck
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command can be used to find out, if the command PrepareAndCheck did just a regular license check or

·If a Serial Number was used, but the activation is not completed (e.g. activation by e-mail, fax)

·If an activation was completed (e.g. an Unlock Key was typed in)

·If a Serial Number was used and the activation was completed (online activation)

It also delivers as a return value which product activation option (online, e-mail, fax, phone) was used.

This information is useful if you want to implement an action which should done only once directly after the product activation. A sample would be to upload a license file after the product is activated (using UploadLic).

The return value is given only once after the above described events. Otherwise the return value is always empty

Name

GetActionsOfLastPrepareAndCheck

Purpose

Gets the customer’s name from within the license file.

Params

None

Returncode

Returncode Type String | Note
Empty | regular license check
AX | Serial Number was used
UX | Activation completed
AXU | Serial Number was used and activation completed

X indicates the product activation option which was used

0 | Online
1 | e-mail
2 | Fax
3 | Phone

Example:

A1 = Serial Number was typed in using e-mail Activation

U2 = Unlock Key was typed and the selected activation option was Fax

A3U = Activation by phone, Serial Number + Unlock Key

Usage

Extract the customer to display or use it inside the application code.

Sample

  sCust := lic.GetActionsOfLastPrepareAndCheck ;

  <<  >>

  ...

See also

GetWebActivation

To find out, if a product was activated or not you can use GetWebActivation.


GetCacheMode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command retrieves the mode of the cache. The cache mode has to be activated first using BeginReadCache or BeginCache

Name

GetCacheMode

Purpose

This command retrieves the mode of the cache

Params

None

Returncode

Returncode Type Integert | Note
0 | Cache is turned off
1 | Cache is in Read mode - opened with BeginReadCache
2 | Cache is in Read and Write mode - opened with BeginCache
Other return codes | Cache mode could not be retrieved, see list of return codes

Usage

Find out if the cache is turned on or not

Sample

   iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.GetCacheMode;

  << start reading values>>

  iRes := lic.EndCache;

See also

EndCache, BeginReadCache, BeginCache, RefreshCache, RevertCache, WriteCache


GetConfig
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See full description - Store data in the license file

Name

GetConfig

Purpose

retrieve a value from the data area using the ID configname

Params

Parameter | Type | Example | Note
Configname | String | DBPassword | Unique ID

Returncode

Returncode Type String | Note
Empty | ID does not exist or the value string is empty. If you are not sure use ExistsConfig to check if the ID exists.
Full String | The value assigned to the ID configname

Usage

Read the content of the config

Sample

  sRes := lic.GetConfig(‘DBPassword’);

  if sRes <> ‘’ then

  begin

     << e.g. use the read value to open the database connection >>

     ...

  end

  else

  begin

     << to be sure that the config exists do a ExistsConfig call >>

     if ExistsConfig(‘DBPassword’) then

     begin

        << the value really is empty >>

        ...

     end

     else

     begin

        << the config DBPassword does not exist >>

        ...

     end;

     ...

See also

Store data, SetConfig, DeleteConfig,ExistsConfig, IsConfigVisible


GetCopyProtection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

GetCopyProtection allows you to find out, which hardware ID is used for copy protection. If the license file has no copy protection enabled, the return value is 0.

Name

GetCopyProtection

Purpose

Gets the active type of Copy Protection

Params

none

Returncode

Returncode Type Integer | Note
0 | No copy protection (or usage of licenseID)
1 to X | 1 = Volume ID 2 = MAC address etc. Complete list of all installation codes / hardware IDs

Usage

E.g. to check what type of copy protection is used

Sample

  iProt := lic.GetCopyProtection;

  << in iProt is now the copy protection type >>

  ...

See also

copy protection, GetInstcode, Prepare

See also GetInstCode to retrieve the installation code.


GetCRC32
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetCRC32

Purpose

Calculate CRC32 checksums for the LicProtector.dll and any other file.

Params

Parameter | Type | Example | Note
Filename | String | C:\temp\myfile.exe | Absolute path to the file that has to be calculated. My be empty for testing the LicProtector.dll.

Returncode

Returncode Type String | Note
Hex | CRC32 checksum as hex-string

Usage

E.g. to check whether a file was manipulated

Sample

  sCRC32 := lic.GetCRC32(‘c:\temp\myapp.txt’);

  << in sCRC32 is now the checksum as hex-string >>

  ...

See also


GetCUIsRunning
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetCUIsRunning

Purpose

Checks if the concurrent user module for the user is running on the local Licence Protector instance

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type Integer | Note
-1 | An error occurred (e.g. the module is unknown) Attention: LastReturnCode does not work!
0 | Module is not running
1 | Module is running

Usage

E.g. to check whether the concurrent user module for the user is already activated on that client

Sample

  iRun := lic.GetCUIsRunning(‘D1006’, ‘’, true);

  if iRun = 1 then

  begin

    << Module D1006 already runs >>

     ...

  end

  else

  begin

     << Module does not exist or is not running >>

     ...

See also

Concurrent user modules, GetCULastValidate, GetCUNextValidate, GetCURunCounter


GetCULastValidate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetCULastValidate

Purpose

Gets the time of the last automatic validate for the concurrent user module on the local Licence Protector instance

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type DateTime | Note
1899-12-30 00:00:00 representing 0 as float value | The module is not running or an error occurred (e.g. the module is unknown) Attention: LastReturnCode does not work!
Other times | Time of last validate on that client

Usage

E.g. to show the time in a kind of system settings dialog

Sample

  dtTime := lic.GetCULastValidate(‘D1006’, ‘’, true);

  if dtTime = 0 then

  begin

    << no usable time due to an error >>

     ...

  end

  else

  begin

     << show the time or use it in calculations>>

     ...

See also

Concurrent user modules, GetCUIsRunning, GetCUNextValidate, GetCURunCounter, CheckInterval, SetCheckInterval


GetCUNextValidate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetCUNextValidate

Purpose

Gets the time of the planned next automatic validate for the concurrent user module on the local Licence Protector instance

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type DateTime | Note
1899-12-30 00:00:00 representing 0 as float value | The module is not running or an error occurred (e.g. the module is unknown) Attention: LastReturnCode does not work!
Other times | Time of the next validate on that client

Usage

E.g. to show the time in a kind of system settings dialog

Sample

  dtTime := lic.GetCUNextValidate(‘D1006’, ‘’, true);

  if dtTime = 0 then

  begin

    << no usable time due to an error >>

     ...

  end

  else

  begin

     << show the time or use it in calculations>>

     ...

See also

Concurrent user modules, GetCUIsRunning, GetCULastValidate, GetCURunCounter, CheckInterval, SetCheckInterval


GetCURunCounter
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetCURunCounter

Purpose

Gets the number of times an automatic validate for the concurrent user module has taken place on the local Licence Protector instance

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type Integer | Note
-1 | An error occurred (e.g. the module is unknown) Attention: LastReturnCode does not work!
>= 0 | Number of times an automatic validate has taken place

Usage

E.g. to show the number in a kind of system settings dialog

Sample

  iRun := lic.GetCURunCounter(‘D1006’, ‘’, true);

  if iRun = -1 then

  begin

    << an error occurred or no valid module >>

     ...

  end

  else

  begin

     << use the extracted information in iRun>>

     ...

See also

Concurrent user modules, GetCUIsRunning, GetCULastValidate, GetCURunCounter, CheckInterval, SetCheckInterval


GetCustomer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieve the customer name from the license file.

Name

GetCustomer

Purpose

Gets the customer’s name from within the license file.

Params

None

Returncode

Returncode Type String | Note
Empty | No customer set in license file
Other value | The customer’s name

Usage

Extract the customer to display or use it inside the application code.

Sample

  sCust := lic.GetCustomer;

  << use sCust >>

  ...

See also

GetManufacturer


GetEasyGoProperty
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieve the value of a property which was set with SetEasyGoProperty.

Name

GetEasyGoProperty

Purpose

Retrieve the value of a property which was set with SetEasyGoProperty.

Params

Parameter | Type | Example | Note
Property | String | ActionAfterSuccess | defines the screen which is changed. For a complete list of all properties see SetEasyGoProperty
Parameter | String |  | not in use - leave empty

Returncode

Returncode Type Integer | Note
0-x | for a complete list of all values see SetEasyGoProperty

Sample

sValue := lic.GetEasygoProperty('ActionAfterSuccess','');

See also

SetEasyGoProperty


GetEndVerificationOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Get the date, when the last online check will be due (online check is terminated). After this date, the regular online check is terminated. This date can be set with SetEndVerificationOfModule.

The next planned online check can be retrieved with NextVerificationOfModule.

For a complete description see chapter regular online checks.

Name

GetEndVerificationOfModule

Purpose

Property to get and set the date when the last online verification for the specified module will occur. After this date no online checks are done.

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Unique ModuleID

Returncode

Returncode Type Integer | Note
0 | There is no information when the last online check will be done. Probably there was no successful CheckModuleSubscription or CheckModule before.
A date | Date, when the last online check is due

Usage

Inform the user when the last online check will be done

Sample

  dtLastCheck := lic.EndVerificationOfModule('QHD001');

  if ...

  end

See also

NextVerificationOfModule.,CheckModuleSubscription CheckModule, DeactivateModule, SetVerificationIDOfModule, VerificationOfModule, SetEndVerificationOfModule


GetEntriesOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetEntriesOfModule

Purpose

Gets a list of all activated or deactivated entries (user, computer, item) in the specified module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Activated | Boolean | True | Return the activated or the deactivated entries
Separator | String | ; | Separator string e.g. a semicolon

Returncode

Returncode Type String | Note
Empty | No users or an error occured
Full String | All users of the selected kind separated by the specified separator string e.g. John;Mary;Todd

Usage

Show you a list of all registered entries in that module

Sample

  sRes := lic.GetEntriesOfModule(‘D1001’, false, ‘;’);

  iErr := lic.LastReturnCode;

  if iErr <> 0 then

  begin

     << react on error code >>

     ...

  end

  else

  begin

     << process the list >>

     ...

See also

ExistsEntry, IsEntryActivated, ActivateEntry, DeactivateEntry, RemoveDeactivated

To check if a specific user / PC / item is using a license of a module use ExistsEntry


GetErrorMessage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetErrorMessage

Purpose

Gets the error message for the specified returncode in the current language

Params

Parameter | Type | Example | Note
ErrorCode | Integer | 2 | ErrorCode, see list of return codes

Returncode

Returncode Type String | Note
Empty | Specified ErrorCode is not valid (see list of return codes)
Message | The message in the set language

Usage

E.g. show an error in your dialog schema.

Sample

  sMsg := lic.GetErrorMessage(2);

  << use the extracted message >>

  ...

See also

SetLanguage, LastReturncode. It is possible to use this command before a license file has been opened.


GetInstCode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can use this function to display the Installation Code / Hardware ID to the user, if you don’t want to use the License Viewer or EasyGo. The hardware IDs are retrieved from the PC, where the license file is stored.

InstallationCode = GetInstCode(CopyProtectType)

The value 0 (No Copy Protection) in the function GetInstCode retrieves a default value. The value is B3F5AA23. You can use it as an indication, that the license file has no Copy Protection. A better and recommended way to determine the type of activated copy protection is to use GetCopyProtection() which delivers 0 for none, 1 for VolumeID, 2 for MAC address and 3 for Hostname.

Note

If an installation code can not be retrieved (e.g. no MAC address available) you get an empty string as return value.

Name

GetInstCode

Purpose

Gets the installation code for the specified type

Params

Parameter | Type | Example | Note
copy protection type | Integer | 2 | 0 = no copy protection 1 = Volume ID 2 = MAC address etc. Complete list of all installation codes / hardware IDs

Returncode

Returncode Type String | Note
Empty | Operation failed, no installation code could be computed
B3F5AA23 | Code for no copy protection
Other code (always 8 characters long) | Computed code of the specified type

Usage

E.g. compute installation code for a routine to request a new license file

Sample

  sCode := lic.GetInstCode(1);

  if sCode = ‘’ then

  begin

    << computing the installation code failed >>

     ...

  end

  else

  begin

    << use the installation code >>

     ...

See also

GetCopyProtection

To use this command, the license file must have been opened with one of the prepare commands.


GetKeyAbsoluteDays

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result, if the key value for the number of days will be added or if the key value will overwrite the existing value in the license file.

Name

GetKeyAbsoluteDays

Purpose

This command analyzes an Activation Key and gives as a result, if the key value for the number of days will be added or if the key value will overwrite the existing value in the license file.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | the license file value for the expiry date will be overwritten with the new value in the key (number of days)
False | the key value with number of days will be added to the value in the license file

Usage

When the user types in a key you could use this information in your application logic

Sample

  bOk := lic.GetKeyAbsoluteDays(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if bOk then

  begin

         << license file value will be overwritten >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyAbsoluteLics
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result, if the key value for the number of licenses will be added or if the key value will overwrite the existing value in the license file.

Name

GetKeyAbsoluteLics

Purpose

This command analyzes an Activation Key and gives as a result, if the key value for the number of licenses will be added or if the key value will overwrite the existing value in the license file

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | the license file value will be overwritten with the new value in the key
False | the key value will be added to the value in the license file

Usage

When the user types in a key you could use this information in your application logic

Sample

  bOk := lic.GetKeyAbsoluteLics(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if bOk then

  begin

         << license file value will be overwritten >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyActivation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the value for the activation status.

Name

GetKeyActivation

Purpose

This command analyzes an Activation Key and gives as a result the value for the activation status.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
0 | Activation status = none
1 | Activation status = required
2 | Activation status = done
3 | Activation status = unchanged
-1 | Value not defined. Key without Activation status (turn on/off copy protection, tamper detection, reset run number) - use GetKeyType to get details

Usage

When the user types in a key you could use this information in your application logic . Activation status = required would be the value for a Serial Number

Sample

  iKeyactivationstatus := lic.GetKeyActivation(HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh);

  if iKeyactivationstatus = 0 then

  << activation status is not changed >>

  ...

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyCopyProtectionType
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the type of copy protection (installation code number), which will be set with this key. This command can only be used for keys which turn copy protection on (Unlock Key).

·Use GetKeyType to analyze if the key is from type = 1

·Use GetKeyInstCode to retrieve the value of the installation code

Name

GetKeyCopyProtectionType

Purpose

This command analyzes an Activation Key and gives as a result the type of copy protection (installation code number), which will be set with this key. This command can only be used for keys which turn copy protection on (Unlock Key).

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
-1 | Key without copy protection
0 | Key which turns off copy protection
1 to X | Key which turns on copy protection 1 = Volume ID 2 = MAC address etc. Complete list of all installation codes / hardware IDs

Usage

When the user types in a key you could use this information in your application logic

Sample

  iKeyinstcodetype := lic.GetKeyCopyProtectionType(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  << in iKeyinstcodetype will change the copy protection to type x >>

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyInstCode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the 8 digit installation code, which will be set with this key. This command can only be used for keys which turn copy protection on (Unlock Key). For all other keys, the license file ID is retrieved as an hex value. If no ID is set or the ID=0 then the result value will be

·Use GetKeyType to analyze if the key is from type = 1

·Use GetKeyCopyProtectionType to retrieve the installation code number

Name

GetKeyInstCode

Purpose

This command analyzes an Activation Key and gives as a result the 8 digit installation code, which will be set with this key. This command can only be used for keys which turn copy protection on (Unlock Key).

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type String | Note
Empty | No installation code could be retrieved (license file ID = 0 and no copy protection code is set)
Other code (always 8 characters long) | Installation code which will be set for this license file. It it is not a copy protection key (use GetKeyType)

Usage

When the user types in a key you could use this information in your application logic

Sample

  scode := lic.GetKeyInstCode(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

 if sCode = ‘’ then

  begin

    << No installation code could be retrieved >>

     ...

  end

  else

  begin

    << use the installation code >>

     ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyIsSerial
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result, if the key is a Serial Number (which can be used for product activation) or not.

Name

GetKeyIsSerial

Purpose

Retrieve the value of a Yes/No Activation Key

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | The key is a Serial Number
False | The key is not a Serial Number

Usage

When the user types in a key you could use this information in your application logic

Sample

  bOK := lic.GetKeyIsSerial(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

   if bOk then

  begin

         << key is a Serial Number >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key


GetKeyLicences
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the number of users, computers, concurrent users, counter value, item counter value.

Name

GetKeyLicences

Purpose

Retrieve the number of users, computers, concurrent users, counter value, item counter value of an Activation Key

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
-1 | Key without number of licenses (turn on/off copy protection, tamper detection, reset run number).
0 | Number of licenses = unchanged. It the module type is from type Yes/No then it is always 0. Use GetKeyYesNo
1-x | Number of licenses

Usage

When the user types in a key you could use this information in your application logic

Sample

  iKeynumber := lic.GetKeyLicences(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  << application logic >>

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyDemo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the value for the Demoversion flag.

Name

GetKeyDemo

Purpose

This command analyzes an Activation Key and gives as a result the value for the Demoversion flag.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
Key with license per PC, User or Concurrent User
-1 | Demo version status is unchanged . Also key without demo version status (turn on/off copy protection, tamper detection, reset run number) - use GetKeyType to get details
1 | Demo version status is set to Yes
0 | Demo version status is set to No

Usage

When the user types in a key you could use this information in your application logic

Sample

  iKeydemoversion := lic.GetKeyDemo(HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh);

  if iKeydemoversion = 0 then

  << demoversion status is not changed >>

  ...

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyExpiryDate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the expiry date, which will overwrite the value in the license file

Name

GetKeyExpiryDate

Purpose

This command analyzes an Activation Key and gives as a result the expiry date, which will overwrite the value in the license file

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type DateTime | Note
30.12.1899 (12/18/1899) | Empty = The date will not be changed
Other value | The date, which will be written into the license file
29.12.1899 (29/18/1899) | Value not defined. Key without a date information (turn on/off copy protection, tamper detection, reset run number) - use GetKeyType to get details

Usage

When the user types in a key you could use this information in your application logic

Sample

dtKeyexpirydate := lic.GetKeyExpiryDate(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  << application logic >>

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyLocalReuse
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result, if the key can be used multiple times on the same machine, which allows a reinstallation.

Name

GetKeyLocalReuse

Purpose

This command analyzes an Activation Key and gives as a result, if the key can be used multiple times on the same machine, which allows a reinstallation.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | the key will allow a reinstallation
False | the key will not allow a reinstallation

Usage

When the user types in a key you could use this information in your application logic

Sample

  bOk := lic.GetKeyLocalReuse(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if bOk then

  begin

         << key can be used on this machine multiple times >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyDays
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the number of days the key will add to the expiry date in the license file

Name

GetKeyDays

Purpose

This command analyzes an Activation Key and gives as a result the number of days the key will add to the expiry date in the license file

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
0 | Unchanged - the expiry date will not be changed in the license file
0-x | Number of days added to the license file. If the expiry date in the license file is in the past, then the days are added to today's date
-1 | Value not defined. Key without a date information (turn on/off copy protection, tamper detection, reset run number) - use GetKeyType to get details

Usage

When the user types in a key you could use this information in your application logic

Sample

iKeynumberdays := lic.GetKeyDays(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  << application logic >>

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and retrieves the moduleID.

Name

GetKeyModule

Purpose

Retrieve the module ID of an Activation Key

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type String | Note
Empty | This key has no module ID. It could e.g. be an Unlock Key or a key to turn on/off Copy Protection. You could use GetKeyType to find out, what type of key it is
QHD001 | The module ID the Activation Key was made for

Usage

When the user types in a key you could use this information for which module the key was made for

Sample

  sKeymodule := lic.GetKeyModule(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if sKeymodule = ‘’ then

  begin

    << this is a key without a module ID >>

     ...

  end

  else

  begin

    << use the module ID >>

     ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyForceOnlineCheck
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result, if the key will be sent to the Activation Server 4 for online validation.

Name

GetKeyForceOnlineCheck

Purpose

This command analyzes an Activation Key and gives as a result, if the key will be sent to the Activation Server 4 for online validation.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | the key will be sent to Activation Server 4 for online validation
False | the key will not be sent to Activation Server 4 for online validation

Usage

When the user types in a key you could use this information in your application logic

Sample

  bOk := lic.GetKeyForceOnlineCheck(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if bOk then

  begin

         << key does not connect to the Internet >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyType
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key and gives as a result the type of a key (e.g. turn on Copy Protection).

Name

GetKeyType

Purpose

Retrieve the type of an Activation Key

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
0 | it is a standard Activation Key for a module
1 | key to turn on copy protection (Unlock Key) - see also GetKeyInstCode, GetKeyCopyProtectionType
2 | key to turn off copy protection
3 | key to reset the local run number
4 | key to reset the global run number
5 | key to turn on tamper detection
6 | key to turn off tamper detection

Usage

When the user types in a key you could use this information in your application logic

Sample

  iKeytype := lic.GetKeyType(HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh);

  if iKeytype = 0 then

  << analyze the key >>

  ...

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetKeyYesNo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command analyzes an Activation Key from type Yes/No. For all other keys uses GetKeyLicences.

Name

GetKeyYesNo

Purpose

Retrieve the value of a Yes/No Activation Key

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Integer | Note
-1 | Value = unchanged
0 | Values = No
1 | Value = Yes

Usage

When the user types in a key you could use this information in your application logic

Sample

  iKeynumber := lic.GetKeyYesNo(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  << application logic >>

  end

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


GetLanguage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieves the language, which was either defined with SetLanguage or the user selected in the activation screens (requires SetRegisterLanguages.)

Name

GetLanguage

Purpose

This command retrieves the language, which is used by Licence Protector user interface

Params

None

Returncode

Returncode Type Integer | Note
1-x | complete list of all languages see SetLanguage

Usage

Synchronize the language of Licence Protector and main application

Sample

  iRes := lic.GetLanguage;

  << change language of own application>>

  ...

See also

SetLanguage, SetRegisterLanguages


GetLastRunNoDate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetLastRunNoDate

Purpose

Gets the date of the local Run Number token.

Params

None

Returncode

Returncode Type DateTime | Note
0 | An error occurred
Other value | The date of the local Run Number token

Usage

Check whether a local Run Number entry may be too old and should be verified by an online check.

Sample

  dtLastDate := lic.GetLastRunNoDate;

  << use dtLastDate >>

  ...

See also

TamperDetection, licenseTampered


GetLicFileDate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetLicFileDate

Purpose

Gets the date when this license file was created.

Params

None

Returncode

Returncode Type DateTime | Note
0 | An error occurred
Other value | The date when this license file was created

Usage

Extract the creation date to display or use it inside the application code.

Sample

  dtCreated := lic.GetLicFileDate;

  << use dtCreated >>

  ...

See also

GetLicFileID, GetLicFileVersion


GetLicFileID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieve the license file ID

Name

GetLicFileID

Purpose

Gets the license ID of the license file

Params

None

Returncode

Returncode Type Integer | Note
The ID | The ID of the license file

Usage

You want to implement a hardware independent Copy Protection.

Sample

  iID := lic.GetLicFileID;

  << use the extracted ID >>

  ...

See also

CheckLicenceID, Copy Protection, GetLicFileDate, GetLicFileVersion


GetLicFileVersion
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector version which was used to create or modify the license file

Name

GetLicFileVersion

Purpose

Gets the version of the license file

Params

None

Returncode

Returncode Type Integer | Note
The version | e.g. 2200 for major version 2, minor version 1, no patches

Usage

You want to check if the license file is up-to-date

Sample

  iVersion := lic.GetLicFileVersion;

  << use the extracted version >>

  ...

See also

GetLicFileID, GetLicFileDate

· Version of the application

· Version of the Licence Protector DLL


GetLPComputername
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command retrieves the computer name (hostname) of the PC, on which the application is running. In a Terminal Server / Citrix environment it is the computer name, which runs the Terminal Server / Citrix session.

This value could be used to check, if the computername is already added in the license file - retrieve all computer names from the license file with GetEntriesOfModule - delete values with DeactivateEntry and RemoveDeactivated .

Name

GetLPComputername

Purpose

This command retrieves the computer name (hostname) of the PC, on which the application is running.

Params

None

Returncode

Returncode Type String | Note
mirage-01-office2 | hostname of the PC

Usage

retrieve system information

Sample

  sComputername := lic.GetLPComputername;

  << use the name in the application logic >>

  ...

See also

GetEntriesOfModule, DeactivateEntry, RemoveDeactivated


GetLPWindowsUser
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command retrieves the windows user name of the user, who runs the application.

This value could be used to check, if the user is already added in the license file - retrieve all user names from the license file with GetEntriesOfModule - delete values with DeactivateEntry and RemoveDeactivated .

Name

GetLPWindowsUser

Purpose

This command retrieves the windows user name of the user, who runs the application.

Params

None

Returncode

Returncode Type String | Note
tom | windows login name

Usage

retrieve system information

Sample

  sUsernamee := lic.GetLPWindowsUser;

  << use the name in the application logic >>

  ...

See also

GetEntriesOfModule, DeactivateEntry, RemoveDeactivated


GetMailActivatorBlock
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with an e-mail Activator Service. This services needs an encrypted text block in the e-mail to analyze the e-mail. The block is automatically created, if you use EasyGo in your application (PrepareAndCheck). In case an own GUI is used, an the e-mail Activator Service is required, then the encrypted block can be built with GetMailActivatorBlock.

Sample of an encoded text block

--- STARTBLOCK ---

r1yHz0o1fJtiu22uC7q1nwgMT1enzQz1dbiw1130NQ11yPOKj1\nkbfGy1qKJ210RL8yg1fEeCQ1pDLPk1AbFNg21l3xS1j0CHA0TX\niyO1PLlOW0ZwBRb1eoGeC1CncMa1wLo1Y2anuCm2eXON01k7qg\nA1R8TqH133MLI2dCwvd1xLN4C1zSanD2aj8mH1cbaNu1tdCH61\nBhzhh0NaitV1fso4D1A5i8N1A9tpc1MvRzO1344WH2eYqd01Sj\nsWt0ZHUge0ViRP41CrA9Y1yKN8v1R8FAs1dfsMG

--- ENDBLOCK ---

Name

GetMailActivatorBlock

Purpose

Creates an encrypted text block for e-mail activation

Params

Parameter | Type | Example | Note
Serial | String | IsGER-5EP93-9E7Iw-3tI8X-pQU5k-6S14H | Serial Number or unique ID
Project | String | demo-easygo | project name
Name | String | Smart Inc. | company name or user name provided in the registration screen
Email | String | tom.hanks@smartinc.com | e-mail address provided in the registration screen
ModuleID | String | QHD001 | ModuleID of the module, which is activated
CompanyID | String |  | all fields in green represent the values explained in SendCustomerInfo
CompanyName | String |  |
FirstName | String |  |
LastName | String |  |
Salutation | String |  |
AcademicTitle | String |  |
JobTitle | String |  |
StreetAddress1 | String |  |
StreetAddress2 | String |  |
ZIP | String |  |
City | String |  |
State | String |  |
Country | String |  |
Phone1 | String |  |
Phone2 | String |  |
WebAddress | String |  |
Newsletter1 | Boolean |  | a
Newsletter2 | Boolean |  |
Newsletter3 | Boolean |  |
Newsletter4 | Boolean |  |
Customer1 | String |  |
Customer2 | String |  |
ForEMail | Boolean | False | Defines if a word-wrap is replaced with \n (value = false) or with %0D%0A (value = true)

Returncode

Returncode Type String | Note
Encoded Text block | The text block may not be changed in any way

Usage

Create an e-mail which is sent to the e-mail Activator Service

Sample

lic.GetMailActivatorBlock(‘IsGER-5EP93-9E7Iw-3tI8X-pQU5k-6S14H','demo-easygo','Smart Inc.','tom.hanks@smartinc.com','QHD001','ID678','Tom','Hanks','Mr.','','CTO','Abbey Road 33','','NW8 9AY','London','','United Kingdom','','','',true,false,false,false,'','',false);

See also


GetManufacturer

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

GetManufacturer

Purpose

Gets the manufacturer’s name from within the license file.

Params

None

Returncode

Returncode Type String | Note
Empty | No manufacturer value set in license file
Other value | The manufacturer

Usage

Extract the manufacturer to display or use it inside the application code.

Sample

  sMF := lic.GetManufacturer;

  << use sMF >>

  ...

See also

GetCustomer


GetModuleList
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command is used to retrieve all modules of a license file.

Name

GetModuleList

Purpose

Gets the list of all modules inside the license file

Params

Parameter | Type | Example | Note
WithNames | Boolean | True | Should all module names also be returned
WithTypes | Boolean | False | Should all module types also be returned

Returncode

Returncode

Type String

Note

List of modules

The modules are separated by semicolon (;)

Without names and types:

D1001;D1002;D1006;D1003;D1004;D1005

With names:

D1001;ERP Module;D1002;Analysis Module;D1006;Accounting Module;D1003;Number of Employees;D1004;CTI Module;D1005;Custom Reports

With names and types:

D1001;ERP Module;U;D1002;Analysis Module;S;D1006;Accounting Module;R;D1003;Number of Employees;C;D1004;CTI Module;Y;D1005;Custom Reports;I

Usage

To see which modules are already inside your license file.

Sample

  sList := lic.GetModuleList(false, false);

  << use the sList … >>

  ...

See also

AddModule, DeleteModule, ExistsModule

To check if a specific module is available in the license file use ExistsModule


GetRemainingSubGraceDays
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieve the remaining days of the grace period - details see CheckModuleSubscription

Name

GetRemainingSubGraceDays

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type String | Note
Double | Remaining days of the grace period as a double value - 0.5 = 12 hours -1 = no grace period is activate (there could be a grace period but it has not started yet)

Usage

E.g. implement a good and bad value anti-cracker strategy

Sample

  iGraceDays := lic.GetRemainingSubGraceDays (‘D1001’);

  ...

See also

CheckModuleSubscription, Getval - Token SGD, SGP, SetSubGraceDays

If you need the days as an integer value (e.g. 2 days) then use GetVal, Token SGD

To retrieve the expiry date of the grace period use GetVal, Token SGP


GetSerial
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Returns the Serial Number of a module.

Name

GetSerial

Purpose

Gets the Serial Number for the specified module

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | If the module ID is empty the main module is used

Returncode

Returncode Type String | Note
Serial Number | Serial Number of the module
Empty | No Serial Number was used for this Module

Sample

  sSerial := lic.GetSerial(‘QHD001’);

  <<  >>

  ...

See also


GetTagValue
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Returns the ASCII value which is stored in the field TagValue of a module.

Name

GetTagValue

Purpose

Gets the tag for the specified module

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type String | Note
Tag | The set tag

Usage

E.g. implement a good and bad value anti-cracker strategy

Sample

  sTag := lic.GetTagValue(‘D1001’);

  << use the tag as good value and replace the bad value >>

  ...

See also

TagValue


GetVal
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to read a lot of properties of the license file and modules. To modify these values see SetVal()

Name

GetVal

Purpose

Gets values from modules or the license file

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested. If empty the call is supposed to return a value from the license file
Token | String | TLI | The token. See Token List

Returncode

Returncode Type String | Note
Value | The extracted value as string

Usage

Read a value to check it before altering it.

Note that most of the values readable by GetVal are accessible with another function. If there is another function we recommend to use that other function e.g. use GetManufacturer instead of GetVal(‘’, ‘OEM’)

Sample

  sVal := lic.GetVal(‘D1001’, ‘TLI’);

  << in the string sVal now is the value of total licenses of module D1001,

     You must convert the string to an integer to use that value…>>

  ...

See also

Altering modules, Token list, SetVal, AddModule, DeleteModule

See also

Token List GetVal
SetVal


Token List
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To alter some modules you can use the function SetVal(). To retrieve the information, use GetVal().

Its parameters are a module ID and a token. If you call SetVal() with an empty module ID, it is supposed to change a value inside the license. Take a look in the token list to see which tokens could be used:

Token | Changed value | Data type | Purpose | Similar function
Tokens for the whole license (Parameter ModuleID of SetVal/GetVal has to be an empty string)
CST | Customer | String |  | GetCustomer
OEM | Manufacturer | String |  | GetManufacturer
FID | FileID | Integer |  | GetLicFileID
VSN | Version | Integer | Version of the license file format | GetLicFileVersion
CPT | CopyProtectType | Integer |  | GetCopyProtection
ICO | InstCode | String | With GetVal this token retrieves the hardware ID (8 digit code), which has been used for copy protection. Using SetVal you can activate copy protection . B3F5AA23 is the code for no InstCode | Retrieve the hardware ID of the computer with GetInstcode
LTG | Tag | String |  |
MID | Main module ID | String | Change the main module ID - default ID is set in the project template |
PRJ | Projectname | String |  | Projectname
WSU | WebServiceURL | String |  | WebServiceURL
SWS | ShowWAStartPage | Boolean | GetVal() returns ‘true’ or ‘false’ SetVal() accepts values ‘true’, ‘false’, ‘1’, ‘0’, ‘on’, ‘off’, ‘yes’, ‘no’ | ShowWAStartPage
SWP | ShowWAProgressPage | Boolean | GetVal() returns ‘true’ or ‘false’ SetVal() accepts values ‘true’, ‘false’, ‘1’, ‘0’, ‘on’, ‘off’, ‘yes’, ‘no’ | ShowWAProgressPage
SWR | ShowWAResultPage | Boolean | GetVal() returns ‘true’ or ‘false’ SetVal() accepts values ‘true’, ‘false’, ‘1’, ‘0’, ‘on’, ‘off’, ‘yes’, ‘no’ | ShowWAResultPage
LVI | LicenceVerification | Integer | values see LicenceVerification - details see Regular online check |
NVI | NextVerification | Date | set next online verification date - details see Regular online check |
EVI | EndVerification | Date | set end verification date - details see Regular online check |
VER | Application Version | String | Application Version number - can also be added in the License Generator, screen License Main. | AppVersion
VID | VerificationID | String | see command SetVerificationID |
VPR | VerificationProduct | String | see command SetVerificationProduct |
RES | Reseller | String | Name of the reseller - can also be added in the License Generator, screen License Main. |
SEL | SecurityLevel | Integer |  |
TDM | TamperDetectionMode | Integer |  |
TDG | TamperDetection GraceTimes | Integer |  |
CLC | TamperDetection | Boolean |  |
ALW | AllowSetVal | Boolean |  |
URL | AllowChangeWASURL | Boolean |  |
Commands for license file upload (UploadLic)
LUI | ID for upload | String | ID used for upload |
LUJ | Project Name | String | Project name used for upload |
LUL | Name | String | Name to identify the license file |
LUM | Module ID | String | Module ID used for upload |
LUP | Date / TIME | Date | Date / Time of the last upload |
Tokens for a module
ALW | Allow | Boolean | GetVal() returns ‘true’ or ‘false’ SetVal() accepts values ‘true’, ‘false’, ‘1’, ‘0’, ‘on’, ‘off’, ‘yes’, ‘no’ |
CHI | CheckInterval | Integer |  | CheckInterval value
CSK | CopyProtectionSwitchOnKey | String | value available for backward compatibility and is no longer in use |
CSO | CopyProtectionSwitchOffKey | String | value available for backward compatibility and is no longer in use |
DMO | Demo | Boolean | GetVal() returns ‘true’ or ‘false’ SetVal() accepts values ‘true’, ‘false’, ‘1’, ‘0’, ‘on’, ‘off’, ‘yes’, ‘no’ | Demo flag
DPC | DiffPct | Integer |  | DiffPct, SetDiffPct
EMV | EndModuleVerification | Date | set end verification date - details see Regular online check | see also token NMV, MVI, MVD
EXO | ExpiredOn | Date | Accepted values are in ISO-format YYYY-MM-DD 1899-12-30 is the value for an empty date | ExpiredOn value
LAM | Last Activation Date | Date | Date, when the product was activated 1899-12-30 is the value for an empty date |
LAT | Last ActivationMethod | Integer | Retrieves the method, how a module activation was done -1 = none 0 = Online 1 = e-mail 2 = Fax 3 = Phone |
MOI | ModuleID | String | Get or Set a module ID |
TLI | Totallicenses/Value | String | Set the value of a module - e.g. Yes/No or number of licenses for a network or counter module | Totallicenses
LTY | licenseType | String | Values are ‘U’ à license per named user ‘S’ à license per computer ‘C’ à Counter ‘Y’ à yes/no ‘I’ à license per item ‘R’ à Concurrent user |
NMV | NextModuleVerification | Date | set next online verification date - details see Regular online check | see also token MVI, EMV, MVD
NOD | NoOfDays | Integer |  | NoOfDays
MEO | MaxExpiredOn | Date |  |
MON | ModuleName | String |  | ModuleName
KYS | Keys | String | All standard keys for that module, separated by semicolon, including hidden keys |
MYS | Keys | String | All standard keys for that module, separated by semicolon. Hidden keys are displayed as ***** |
MVD | ModuleVerificationID | String | used in case the ID is left empty in the CheckModuleSubscription or CheckModule command | see also token NMV, EMV, MVI
MVI | ModuleVerification | Integer | Values are 0 = off 1 = ongoing / enabled 2 = frozen 3 = deactivated details see Regular online check | see also token NMV, EMV, MVD
REM | RegisteredEMail | String | e-mail address of the registration. If multiple modules are registered, the e-mail address is saved per module |
RNM | RegisteredCustomerName | String | if multiple modules are registered, the name is saved per module. The main customer name in the license file can be retrieved with token CST |
SAC | ActivationState after copy protection is turned on | Integer | Details see activation status after product activation |
SGD | Grace Days | Integer | Number of days for the grace period in case the online validation with CheckModuleSubscription fails. Return value is integer (e.g. 2 days). Definition of grace days done with SetSubGraceDays | 0 = no grace days
SGP | Grace Period - Expiry Date | Date | Expiry Date of the grace period |
SNR | SerialNumber | String | Retrieves the Serial Number | GetSerial
TAG | Tag | String |  | GetTagValue
WFL | EasyGoWorkflow | Integer | Workflow defined in the project template or with SetRegisterSettings. |
WST | WebActivation | Integer | 0 = none 1 = required 2 = done 3 = erroneous | GetWebActivation

If you want to activate copy protection using a DLL command, the workflow would be

·Use PrepareForce to open the license file

·SetVal, Token CPT to set the copy protection type (e.g. 2 = MAC Address)

·Use GetInstcode to retrieve the installation code

·SetVal, Token ICO using as parameter the 8-digit installation code retrieved with GetInstcode

·Quit


GetVersion
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Version of the Licence Protector DLL

Name

GetVersion

Purpose

Gets the current version of Licence Protector

Params

none

Returncode

Returncode Type String | Note
Version | The extracted version e.g. ‘2.4.0.911’

Usage

Sample

  sVer := lic.GetVersion;

  << in the string sVer now is the version as dot separated string >>

  ...

See also

· Version of the application

· Version of the license file


GetVerificationOfModule

Navigation: Function Reference and Error Codes > Commands in Alphabetical Order:

GetModuleVerification
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Get the status of the regular online check, which was either set using SetVerificationOfModule or in the project template using <ModuleVerification>. If a module was locked using DeactivateModule or TransferLicense, then the status is 2=frozen.

For a complete description see chapter regular online checks.

Name

GetVerificationOfModule

Purpose

Property to get the state of the license regarding online verifications used in combination with CheckModuleSubscription or CheckModule

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Unique ModuleID

Returncode

Returncode Type Integer | Note
0 = off | Regular online verification is off
1 = ongoing | Regular online verification is off
2 = frozen | A failed online verification has locked that license. A successful checkModuleSubscription or PrepareAndCheck can reactivate it it
3 = deactivated | The regular online verification was terminated within the Key Details on the Activation Server 4 or with setEndVerificationOfModule

Usage

You can check the main parameter of the CheckLicence functionality

Sample

  iLicModuleVerification := lic.GetVerificationOfModule('QHD001');

  if iLicModuleVerification = 0 then

  begin

    << online Verification is Off >>

     ...

  end

See also

CheckModuleSubscription, CheckModule, DeactivateModule, NextVerificationOfModule, VerificationOfModule, SetVerificationOfModule, SetVerificationIDOfModule


GetWebActivation
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieves the status of the field Activation for an module.

Click to enlarge

Generator - field Activation

The field changes in the following situations:

·Delivery with license file = none

·Type in a Serial Number = required

·Type in an Unlock Key or the Activation Server sends the Unlock Key during online activation = done

·Problem during online activation = erroneous

Name

GetWebActivation

Purpose

Get the activation state for a module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module which is queried

Returncode

Returncode Type Integer | Note
Web activation state | 0 = none, 1 = required, 2 = done, 3 = erroneous -1 = wrong ModuleID was used

Usage

Determines the state of the module regarding activation on Web Activation Server.

If this valus is 0 (none) no further action is required

If this valus is 1 (required) or 3 (erroneous) a web activation (with WebRegister) should be done

If this value is 2 (done) no further action is required because that module is already activated.

Notice: The web activation state is only a status information what to do. It triggers no automatic action. If a module has state 1 there is no implicit WebRegister call.

Sample

  iWA := lic.GetWebActivation(‘D1001’);

  if (iWA = 1) or (iWA = 3) then

  begin

    << call WebRegister for module D1001>>

  End

  Else

  Begin

     << no activation necessary or activation already done>>

  end

  ...

See also

WebRegister


IsConfigVisible
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See full description - Store data in the license file

Name

IsConfigVisible

Purpose

Checks if the config with the specified name is visible inside License Viewer

Params

Parameter | Type | Example | Note
Configname | String | DBPassword | Unique configname

Returncode

Returncode Type Boolean | Note
True | This config exists and is visible inside License Viewer
False | This config does not exist or is not be displayed in License Viewer

Usage

Use to check if that config will be displayed in License Viewer

Sample

  bOk := lic.IsConfigVisible(‘DBPassword’);

  if bOk then

  begin

         << the config is visible inside License Viewer >>

         ...

  end

  else

  begin

         ...

See also

Store data, SetConfig, GetConfig, DeleteConfig,ExistsConfig


IsEntryActivated
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

IsEntryActivated

Purpose

Checks if an registered entry (user, computer, item) in a module is activated (= in use)

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Entryname | String | John | Name of the entry (user or computer or item)

Returncode

Returncode Type Boolean | Note
True | This entry is activated in the specified module
False | This entry is deactivated or does not exist in the specified module (or an error occurs)

Usage

E.g. if you want to check if a user is already activated in the module

Sample

  if lic.ExistsEntry(‘D1001’, ‘John’) then

  begin

     if not lic.IsEntryActivated(‘D1001’, ‘John’) then

     begin

         << the entry John exists and is deactivated >>

         ...

     end

  end

  else

  begin

         ...

See also

ExistsEntry, DeactivateEntry, ActivateEntry, GetEntriesOfModule, RemoveDeactivated


IsKeyValid
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command validates, if the Activation Key is a valid key for the product.

Name

IsKeyValid

Purpose

This command validates, if the Activation Key is a valid key for the product.

Params

Parameter | Type | Example | Note
Key | String | HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh | Must be a Licence Protector Activation Key

Returncode

Returncode Type Boolean | Note
True | The Activation Key can be used for this product
False | The Activation Key cannot be used for this product

Usage

Use this function before you use a command like ApplyActivationKey or any other command, which uses an Activation Key as a parameter

Sample

  bOk := lic.IsKeyValid(‘HX4a7-5CYE0-11CFy-6sjwX-kcC3Q-Aj8Eh’);

  if bOk then

  begin

         << it is a valid Activation Key >>

         ...

  end

  else

  begin

         ...

See also

Commands to analyze an Activation Key

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


LastReturnCode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

LastReturnCode

Purpose

Get the last occurred return code

Params

None

Returncode

Returncode Type Integer | Note
Returncode | The last occurred returncode

Usage

An operation failed, You can check the cause by getting the last returncode

Sample

  iRes := lic.LastReturnCode;

  << use returncode e.g. with GetErrorMessage >>

  ...

See also

List of return codes, GetErrorMessage


LicenceTampered
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

LicenceTampered

Purpose

Property to check whether the license file is tampered. This property is identical with LicFileChanged.

Params

None

Returncode

Returncode Type Boolean | Note
True | It is established that the license file is tampered e.g. an old file replaces a new one
False | Tampering could not be established

Usage

You want to check explicitly if a manipulation takes place.

Sample

  bTampered := lic.LicenceTampered;

  if bTampered then

  begin

    << Manipulation!!! React now ... >>

     ...

  end

  else

    << it seems ok >>

     ...

See also

TamperDetection, licenseTampered, ResetLocalRunNo, ResetGlobalrunNo, RemoveLocalRunNo, Validate


LicFileChanged
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

LicFileChanged

Purpose

Obsolete: Use licenseTampered instead.

Checks if the license file is tampered

Params

None

Returncode

Returncode Type Boolean | Note
True | It is established that the license file is tampered e.g. an old file replaces a new one
False | Tampering could not be established

Usage

You want to check explicitly if a manipulation takes place.

Sample

  bTampered := lic.LicFileChanged;

  if bTampered then

  begin

    << Manipulation!!! React now ... >>

     ...

  end

  else

    << it seems ok >>

     ...

See also

licenseTampered, TamperDetection. CheckLicChanged, Validate


LicFileKey
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name | LicFileKey
Comment | Obsolete: Use GetLicFileID


LicFileVersion
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name | LicFileVersion
Comment | Obsolete: Use GetLicFileVersion


LocalProxyPort
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

LocalProxyPort

Purpose

Property to get or set the information of the proxy port that is used to reach the Web Activation.

Params

None

Returncode

Returncode Type Integer | Note
Port | e.g. 8080

Usage

Change the connection setting individually for every user.

Sample

  lic.UseLocalProxy := true;             // use a proxy

  lic.UseLocalIEProxy := false;          // but not the proxy from Internet Explorer

  lic.LocalProxyServer := ‘192.168.1.1’; // set the proxy

  lic.LocalProxyPort := 80;              // set the port of this proxy server

See also

Web Activation, WebServiceURL, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgress Page ShowWAResultPage, UseLocalProxy, LocalProxyServer, UseLocalIEProxy, Projectname


LocalProxyServer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

LocalProxyServer

Purpose

Property to get or set the information of the proxy server that is used to reach the Web Activation.

Params

None

Returncode

Returncode Type String | Note
Servername or IP address | Computername or IP address. UseLocalProxy has to be on, UseLocalIEProxy has to be off.

Usage

Change the connection setting individually for every user.

Sample

  lic.UseLocalProxy := true;             // use a proxy

  lic.UseLocalIEProxy := false;          // but not the proxy from Internet Explorer

  lic.LocalProxyServer := ‘192.168.1.1’; // set the proxy

  lic.LocalProxyPort := 80;              // set the port of this proxy server

See also

Web Activation, WebServiceURL, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgress Page ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyPort, Projectname


LockIsError
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Property to enable a special check if a module is locked or not after a license transfer. Especially useful to find out if a license file was restored after a license transfer was done in combination with the command validate, which would return an error code 300.

Not required if EasyGo is used.

Name

LockIsError

Purpose

Property to enable / disable special check for locked license

Params

None

Returncode

Returncode Type Boolean | Note
True | Check is enabled
False | Check is disabled

Usage

Allows to send e-mails without restriction of text size

Sample

  lic.LockIsError := true;

See also

Validate - Return code 300


MainModuleID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Retrieve the main module ID of the license file. It is defined in the project template using <MainModuleID>

Name

MainModuleID

Purpose

Property to get or set the main module ID in the license file. The main module ID can also be defined in the license file template

Params

None

Returncode

Returncode Type String | Note
Value | The main module ID is required for some actions like license transfer

Usage

Change the projectname in the license file

Sample

  If lic.MainModuleID = ‘’ then

  begin

     lic.MainModuleID := ‘QHD001’;

  end;

  ….

See also

SetVerificationIDOfModule


ModuleName
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ModuleName

Purpose

Gets the name of the specified module

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type String | Note
Name | The name of the module
Empty | The module with the selected ModuleNumer does not exist

Usage

E.g. show the available modules

Sample

  sName := lic.ModuleName(‘D1001’);

  << use the name to show it >>

  ...

See also


NextVerificationOfModule (Get / Set)

Navigation: Function Reference and Error Codes > Commands in Alphabetical Order:

NextVerification
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Date, when the next planned online check is due. The regular online check will terminate on the the date, which is specified with EndVerificationOfModule.

For a complete description see chapter regular online checks.

Name

GetNextVerificationOfModule

SetNextVerificationOfModule

Purpose

Property to get and set the date when the next online verification for the specified module has to take place. This date is monitored with CheckModuleSubscription or CheckModule.

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Unique ModuleID

Returncode

Returncode Type Integer | Note
0 | There is no information about the next Verification. Probably there was no successful CheckModuleSubscription or CheckModule before.
A date | The next online verification has to be executed on that date at the latest.

Usage

Inform the user when the next online check has to be done.

Sample

  dtNextVerification := lic.NextVerificationOfModule('QHD001');

  if dtNextVerification > 0 then

  begin

    << tell your user that the next online Verification has to be executed on that date >>

     ...

  end

See also

EndVerificationOfModule .,CheckModuleSubscription, CheckModule, DeactivateModule, GetVerificationOfModule


NoOfDays
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

NoOfDays

Purpose

Get the number of days of a trial period

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | An error occurred, check LastReturnCode
0 | No trial period
1 to 2147483648 | Number of days of the trial period. Consideration: It’s the value of the plain license file, activation keyActivation Keys are not attended.

Usage

E.g. show a dialog like “Your are on day x of your 30 days trial period”

Sample

  iDays := lic.NoOfDays(‘D1001’);

  if iDays = -1 then

  begin

     iRes := lic.LastReturncode;

    << an error occurred >>

     ...

end

else if iDays = 0 then

begin

  << no no of day limitation for that module >>

  ...

end

else

begin

  << show the dialog >>

  ...

See also

RemainingDays, ExpiredOn


Prepare
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

Prepare

Purpose

Prepares the Licence Protector instance for usage and opens the license file

Params

Parameter

Type

Example

Note

license file

String

F:\mylic.lic

The full path to the license file. See details for UNC pathnames

ProjectSecureKey or ReadKey

String

I am a project secure key

Security Level BASIC:

The project secure key for that license file. Can contain any characters. The minimum length is 6 characters, the recommended length is 15 and greater

Security Level ADVANCED:

The Read Key for that license file. It can not be chosen freely but has to be created using the Create Project Keys function in License Generator.

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened
2 | The license file could not be found or was not opened
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
16384 or 2048 | The file to open is not a valid license file or it has another security level: You can not open a license file of security level ADVANCED using its PSK. You need its Read Key.
Other return codes | Prepare failed, see list of return codes

Usage

Important function in order to use Licence Protector. Dependant of property SecurityLevel Prepare acts as PrepareSimple for Security Level BASIC (=0, default) or PrepareAdvanced for Security Level ADVANCED (=1).

Sample

  lic.SecurityLevel := 0; // the following Prepare acts as PrepareSimple and needs a PSK

                          // at 1, Prepare would act as PrepareAdvanced and needs a                      ReadKey

  iRes := lic.Prepare(sMyLicfile, ‘I am a project secure key’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

PrepareAdvanced, PrepareSimple, SysdateChanged, CheckSysdateChanged, Validate, Quit, PrepareForce

You have to set the SecurityLevel before you can use this command


PrepareAdvanced
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

PrepareAdvanced

Purpose

Prepares the Licence Protector instance for usage and opens the license file using Security Level ADVANCED

Params

Parameter | Type | Example | Note
license file | String | F:\mylic.lic | The full path to the license file. See details for UNC pathnames
ReadKey | String | r1lkYAp1xG QN81fBrcZ 1dfXtw1doy 3Z1l4KHy0N 2yvL0ZBDc X274DHV1 BfV7s0RF pjZ1NOmM f1qXGsu1M qTXK1t4Ts q1c7jQq1iP 3VM1NNx6 j1s64YK299 TY71YSrb K0NdSom 29inxM29b PTJ1mmL NV0SNdC4 1xCbdT2ad Sqt2aazQL 1dslWy1fG XFi11YWO v1fFhLt2ac ufE1hRGX Y1VxH0R0 ViybX0Xm cNz1lm76 W1gQqQe 21grLU1V Ac401UqH 8l0YHwOD 1S46cC20 hVpD1cfA Yk299ixt | The ReadKey for that license file. It is created using function “Create Project Keys” in License Generator and stored in the Key-file.

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened
2 | The license file could not be found or was not opened
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
16384 or 2048 | The file to open is not a valid license file or it has another security level: You can not open a license file of security level ADVANCED using its PSK. You need its Read Key.
Other return codes | Prepare failed, see list of return codes

Usage

Important function in order to use the Licence Protector

Sample

  iRes := lic.PrepareAdvanced(sMyLicfile, ‘r1lkYAp1xGQN81fBrcZ1dfXtw1doy3Z1l4KHy0N 2yvL0ZBDcX274DHV1BfV7s0RFpjZ1NOmMf1qXGsu1MqTXK1t4Tsq1c7jQq1iP3VM1NNx6j1s64YK299TY71YSrb

K0NdSom29inxM29bPTJ1mmLNV0SNdC41xCbdT2adSqt2aazQL1dslWy1fGXFi11YWOv1fFhLt2acufE1hRGX

Y1VxH0R0ViybX0XmcNz1lm76W1gQqQe21grLU1VAc401UqH8l0YHwOD1S46cC20hVpD1cfAYk299ixt’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

Prepare, PrepareSimple, SysdateChanged, CheckSysdateChanged, Validate, Quit, PrepareForce


PrepareAndCheckNT
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Some compilers (known for Visual Studio C++ 2007 an newer) crash when using PrepareAndCheck. The reason is the tag value parameter. Use PrepareAndCheckNT instead. The command has the same parameters but no tag value parameter.

Name

PrepareAndCheckNT

Purpose

Opens the license file and executes the EasyGo form.

Params

Parameter

Type

Example

Note

license file

String

F:\mylic.lic

The full path to the license file . See details for UNC pathnames

ProjectSecureKey/ ReadKey

String

I am a project secure key

The project secure key for that license file.

See details - Read Key

Note: Using a PSK is supported for backward compatibility but should not be used.

ModuleID

String

QHD001

Unique ModuleID – identifies the module to be tested in EasyGo functionality - see details main module

Name

String

The user or item name to check the module for. Normally, you would pass this information only if you have an own user administration. Default option is to use the automatic function - UseWindowsUser = true

UseWindowsUser

Boolean

True

Determines if the windows login name or hostname should be used as name for the license. Concurrent User uses a combination of username and PC name.

If the module is an Item Counter, provide the name for the item counter in the field Name and set UseWindowsUser to false

Quit

Boolean

False

Controls whether the Licence Protector object is available (for further calls) an the license file is not closed or if it is not needed any more and therefore quit.

On false (no quit) the Quit has to be made explicitly at end of the application. For concurrent user testing quit must be set to false. If you need any other testing after PrepareAndCheck also set quit to false

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened and the main module was successfully checked or even activated. It is also possible that the main module is in an evaluation state.
2 | The license file could not be found or was not opened
4 | EasyGo screen terminated by closing the screen with X (close button) or using the END button
16 | Trial or full version expired
32 | No more free license (only when using network license per computer, user or concurrent user)
1024 | This is a copy protection violation. The Installation Code of the license file doesn’t match with the %ID%. See common reasons for this error
2048 | The file %filename% is not a valid license file or file cannot be opened See common reasons for this error
3010 | Online Activation - The Serial Number was already used on another PC
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
Other return codes | Prepare or Validate failed, see list of return codes

Usage

Important function in order to use the Licence Protector

Sample

  iRes := lic.PrepareAndCheckNT(sMyLicfile, ‘XTIORHjmV65XFlH/pRYBjxlRJnhCL....’, ‘D1001’, ‘’, true, false);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

EasyGo, SetRegisterSettings, SetRegisterHelp, SysdateChanged, CheckSysdateChanged, Validate, ValidateEx, Quit, PrepareForce, PrepareAdvanced


PrepareForce
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to open a license file even if one of the following major errors occur:

·Copy Protection error

· Tamper Detection error

· System Date manipulation with CheckSysdateChanged

In case of an error with the command Prepare, this command allows to open the license file and e.g. display the License Viewer to type in a key.

You have to set the SecurityLevel before you can use this command

Name

PrepareForce

Purpose

Prepares the Licence Protector instance for usage and opens the license file. If a license file can’t be opened due to major errors, this command allows to open the file and e.g. display the License Viewer to type in a key

Params

Parameter

Type

Example

Note

license file

String

F:\mylic.lic

The full path to the license file. See details for UNC pathnames

ProjectSecureKey or ReadKey

String

I am a project secure key

Security Level BASIC:

The project secure key for that license file. Can contain any characters. The minimum length is 6 characters, the recommended length is 15 and greater

Security Level ADVANCED:

The Read Key for that license file. It can not be chosen freely but has to be created using the Create Project Keys function in License Generator.

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened
2 | The license file could not be found or was not opened
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
16384 or 2048 | The file to open is not a valid license file or it has another security level: You can not open a license file of security level ADVANCED using its PSK. You need its Read Key.
Other return codes | Prepare failed, see list of return codes

Usage

Normally Prepare should be used! PrepareForce can be used for administration tools that have to be able to open every known license file. Dependant of property SecurityLevel PrepareForce can open license files with Security Level BASIC (=0, default) or files with Security Level ADVANCED (=1).

Note: PrepareForce can’t open license files where the PSK is unknown. Only the Installation Code is ignored.

Sample

  lic.SecurityLevel := 0; // the following PrepareForce uses SecurityLevel BASIC and needs a PSK

                          // at 1, PrepareForce uses SecurityLevel ADVANCED and needs a                      ReadKey

  iRes := lic.PrepareForce(sMyLicfile, ‘I am a project secure key’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

Prepare, PrepareSimple, PrepareAdvanced, SysdateChanged, CheckSysdateChanged, Validate, Quit


PrepareSimple
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

PrepareSimple

Purpose

Prepares the Licence Protector instance for usage and opens the license file using Security Level BASIC

Params

Parameter | Type | Example | Note
license file | String | F:\mylic.lic | The full path to the license file. See details for UNC pathnames
ProjectSecureKey | String | I am a project secure key | The project secure key for that license file. Can contain any characters. The minimum length is 6 characters, the recommended length is 15 and greater

Returncode

Returncode Type Integer | Note
0 | The license file was successfully opened
2 | The license file could not be found or was not opened
16382 | If CheckSysdateChanges is set to true and Licence Protector recognizes that the date was manipulated then you get this error code.
16384 or 2048 | The file to open is not a valid license file or it has another security level: You can not open a license file of security level ADVANCED using its PSK. You need its Read Key.
Other return codes | Prepare failed, see list of return codes

Usage

Important function in order to use the Licence Protector

Sample

  iRes := lic.PrepareSimple(sMyLicfile, ‘I am a project secure key’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

Prepare, PrepareAdvanced, SysdateChanged, CheckSysdateChanged, Validate, Quit, PrepareForce

.


ProjectName
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The command retrieves or changes the project name, which is stored in the license file.

Name

Projectname

Purpose

Property to get or set the projectname in the license file.

Params

None

Returncode

Returncode Type String | Note
Value | This is the name of the project, used to identify the project on the Web Activation configuration

Usage

Change the projectname in the license file

Sample

  If lic.Projectname = ‘’ then

  begin

     lic.Projectname := ‘MyProject’;

  end;

  ….

See also

Web Activation, WebServiceURL, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgress Page ShowWAResultPage, UseLocalProxy, LocalProxyServer, LocalProxyPort, UseLocalIEProxy


ReadActivationKey
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name | ReadActivationKey
Comment | Obsolete: Use ApplyActivationKey


Refresh
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

Refresh

Purpose

Reloads the already prepared license file into the Licence Protector object.

Params

Parameter | Type | Example | Note
None |  |  |

Returncode

Returncode Type Integer | Note
0 | ok
Other return codes | Operation failed, see list of return codes

Usage

Refresh should be used to explicitly reload the license file.

Sample

  iRes = lic.Refresh;

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

Prepare


RefreshCache

No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command rereads the license file from the hard disk into the cache. The cache mode has to be activated first using BeginReadCache or BeginCache. If write commands have been cached, RefreshCache saves the updates to the disk before the license file is loaded into the memory.

Name

RefreshCache

Purpose

Update the cache and save values to the hard disk

Params

None

Returncode

Returncode Type Integer | Note
0 | The cache was successfully updated with the latest license file values
Other return codes | Cache activation failed, see list of return codes

Usage

Update the cache

Sample

  iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.RefreshCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginReadCache, BeginCache, EndCache, RevertCache, WriteCache


RemainingDays
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

RemainingDays

Purpose

Gets the remaining days to the date when the module expires.

Params

Parameter | Type | Example | Note
ModuleID | String | D1003 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | The module never expires (no time limitation)
0 to 2147483648 | Days that are left to use the module. If the module has expired then the return value is 0 and you got a return code of 16 or 17 at the preceding validate, validateEx or ValidatesYes

Usage

E.g. to show the user when a part of your software isn’t usable any more.

Sample

  iRes := lic.Validate(‘D1003’, ‘’, false);

  if ((iRes = 0) or (iRes = 1)) then

  begin

     iDays := lic.RemainingDays (‘D1003’);

     if iDays = -1 then

     begin

        << module never expires >>

         ...

     end

     else

     begin

        << module expires in iDays >>

        ...

     end

  end

  else

  begin

     << an error occurred, perhaps the module already has expires >>

     ...

See also

Validate, ExpiredOn, NoOfDays


RemainingLicences

Navigation: Function Reference and Error Codes > Commands in Alphabetical Order:

RemainingLicenses

No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

RemainingLicences

Purpose

Gets the remaining licenses of the module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1005 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | It is a module type that has no number of licenses
>= 0 | licenses left, between 0 and TotalLicences A counter-module always returns the value of TotalLicences

Usage

E.g. to show the user how many items or users are left for using a part of your software.

Sample

  iLics := lic.Remaininglicences (‘D1005’);

  << use the extracted value >>

  ...

See also

TotalLicences, Module types


RemoveAllItems
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Removes (deletes) all users, PCs or items from a module. The license for each item is then available again.

Sample

6 user license: 4 users are using a license and 2 licenses are free. After using RemoveAllItems all 6 licenses are available again.

Name

RemoveAllItems

Purpose

Physically removes all users, PCs or items from a module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
0 | All users, PCs or items are removed
Other return codes | Operation failed, see list of return codes

Usage

Remove all users or items (not only the deactivated ones) from the license file by calling RemoveAllItems.

Sample

  iRes := lic.RemoveAllItems(‘D1001’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << module is now empty, no items or modules in it anymore, continue >>

     ...

See also

ExistsEntry, DeactivateEntry, ActivateEntry, GetEntriesOfModule, IsEntryActivated, RemoveDeactivated

If you want to remove only a single item / user, then

·Deactivate the item / user

·Remove the deactivated item / user with command RemoveDeactivated.


RemoveDeactivated
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Removes all deactivated users / PCs / items from a module. The users / PCs / items can be deactivated using the License Viewer or with DeactivateEntry.

Name

RemoveDeactivated

Purpose

Physically removes all deactivated users, PCs or items from a module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
0 | All deactivated users, PCs or items are removed
Other return codes | Operation failed, see list of return codes

Usage

Deactivate users or items and finally remove them from the license file by calling RemoveDeactivated

Sample

  iRes := lic.RemoveDeactivated(‘D1001’);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

ExistsEntry, DeactivateEntry, ActivateEntry, GetEntriesOfModule, IsEntryActivated, RemoveAllItem

You can remove all users / PCs / items independent of the fact if they are deactivated or not with the command RemoveAllItems


RemoveExpiryWarningCommit
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command removes all confirmations, the user checked, for time dependent warnings, defined with SetRegisterExpiryWarning.

Name

RemoveExpiryWarningCommit

Purpose

Removes all user confirmations

Params

Name

String

myapp-m1

Removes the user confirmation for a name / ID set with SetRegisterExpiryWarning

Returncode

None

Sample

lic.RemoveExpiryWarningCommit

See also

SetRegisterSetExpiryWarning, SetRegisterClearExpiryWarnings


RemoveLocalRunNo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

RemoveLocalRunNo

Purpose

Removes the local Run Number token in the Windows Registry and sets the local value to 0.

Params

none

Returncode

Returncode Type Integer | Note
0 | Local Run Number was successfully removed
Other return codes | Operation failed, see list of return codes

Usage

Clean up the Run Number infrastructure

Sample

  iRes := lic.RemoveLocalRunNo;

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

TamperDetection, licenseTampered, ResetLocalRunNo, ResetGlobalrRunNo

You have to disable the license testing first (StopConcurrentUsage) before you use this command.


ResetLocalRunNo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ResetLocalRunNo

Purpose

Sets the local Run Number. The token in the Windows Registry is updated or even created.

Params

Parameter | Type | Example | Note
RunNumber | Integer | 0 | Run Number value to set locally. If this value is 0 then the Run Number value of the license file is used

Returncode

Returncode Type Integer | Note
0 | Local Run Number was successfully set
Other return codes | Operation failed, see list of return codes

Usage

Set the local Run Number. Can be used in combination with Tamper Detection Mode manually after a successful WegRegister call.

Sample

  iRes := lic.ResetLocalRunNo(0);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

TamperDetection, licenseTampered, RemoveLocalRunNo, ResetGlobalRunNo

You have to disable the license testing first (StopConcurrentUsage) before you use this command.


ResetGlobalRunNo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ResetGlobalRunNo

Purpose

Sets the Run Number in the license file and therefore resets the whole installation.

Params

Parameter | Type | Example | Note
RunNumber | Integer | 0 | Run Number to set.
ResetDays | Integer | 2 | Number of days beginning from today, an application’s local Run Number is reset

Returncode

Returncode Type Integer | Note
0 | Total Run Number was successfully set
Other return codes | Operation failed, see list of return codes

Usage

Set the Run Number in the license file and allows all installations that use this license file to be locally reset during the defined amount of days. Can be used to allow a reinstallation.

Sample

  iRes := lic.ResetGlobalRunNo(0, 5);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << everything is fine, continue >>

     ...

See also

TamperDetection, licenseTampered, RemoveLocalRunNo, ResetGlobalRunNo

You have to disable the license testing first (StopConcurrentUsage) before you use this command.


RevertCache
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command rereads the license file from the hard disk into the cache. The cache mode has to be activated first using BeginReadCache or BeginCache. If write commands have been cached, RevertCache does not save the updates to the disk before the license file is loaded into the memory. All changes of the cache are lost.

Name

RevertCache

Purpose

Update the cache and do NOT save values to the hard disk

Params

None

Returncode

Returncode Type Integer | Note
0 | The cache was successfully updated with the latest license file values
Other return codes | Cache activation failed, see list of return codes

Usage

Update the cache

Sample

  iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.RevertCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginReadCache, BeginCache, EndCache, RefreshCache, WriteCache


RunsOnVirtualMachine
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command gives a feedback, if the application is started on a Virtual Machine.

Name

RunsOnVirtualMachine

Purpose

This command allows to find out, if the application is running on a virtual machine.

Params

None

Returncode

Returncode Type Integer | Note
0 | no virtual machine
1 | application runs on VMware
2 | application runs on Virtual PC
3 | application runs on Sun Virtual Box
4 | application runs on Wine
5 | application runs on Parallels - (tested with MAC Parallels Desktop version 6, 7 and Windows Parallels Desktop version 4)

Usage

Allows to implement a different program logic for virtual machines, e.g. don't allow to start the application or use regular online checks

Sample

  iRes := lic.RunsOnVirtualMachine;

  if iRes <> 0 then

  << Virtual Machine>>

  ...

  end

See also

See also

Virtual Machine


SendCustomerInfo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command sends a complete address to the Activation Server 4. The address information is independent of an activation - this allows to send the address information e.g. for a demo version.

If you want to link the address to an activation, use the field ID. If you use EasyGo, the ID must be the Serial Number. See: How can I retrieve the Serial Number.

If you use your own activation scenario, the ID must be the same like used with WebRegisterExt.

Name

SendCustomerinfo

Purpose

Sends the customers info to the Web Activation server without showing the activation screen.

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Web Activation Server
ID / Serial Number | String | ID12345 | Serial Number / ID to connect the address data to a key, product activation or license file
CompanyName | String | Blue River Inc. | The customer’s company
FirstName | String | Tom | The first name of the customer
LastName | String | Sullivan | The last name of the customer
Salutation | String | Mr. | The salutation of the customer
AcademicTitle | String |  | The academic title of the customer
JobTitle | String | CEO | The job title of the customer
StreetAddress1 | String | 852 Dewes Lane | The first part of the customer’s address
StreetAddress2 | String |  | The second part of the customer’s address (if needed)
ZIP | String | 11230 | The zip code of the customer’s address
City | String | Brooklyn | The city of the customer’s address
State | String | NY | The state of the customer’s address
Country | String | United States | The country of the customer’s address
Phone1 | String | 646.296.1572 | The customer’s main phone
Phone2 | String |  | The customer’s alternative phone
Email | String | tom@blueriver-inc.com | The customer’s eMail address
Language | String | English | The customer’s language
WebAddress | String | http://www.blueriver-inc.com | The customer’s web address
Newsletter1 | Boolean | True | Subscribe to newsletter 1
Newsletter2 | Boolean | False | Subscribe to newsletter 2
Newsletter3 | Boolean | True | Subscribe to newsletter 3
Newsletter4 | Boolean | False | Subscribe to newsletter 4
Customer1 | String | OD-7653 | Custom field 1 e.g. to link the address to an ERP system
Customer2 | String |  | Custom field 2
ShowConnection Mask | Integer | 0 | 0 = do not show the connection screen 1 = show the connection screen 2 = use the ShowWA…Page values

Returncode

Returncode Type Integer | Note
0 | The customer’s data has been successfully sent
Other return codes | Operation failed, see list of return codes

Usage

Set the Run Number in the license file and allows all installations that use this license file to be locally reset during the defined amount of days. Can be used to allow a reinstallation.

Sample

  iRes := lic.SendCustomerinfo(‘’, ‘invoice10321’, ‘Blue River Inc.’, ‘Tom’, ‘Sullivan’, ‘Mr.’, ‘’, ‘CEO’, ‘852 Dewes Lane’, ‘’, ‘11230’, ‘Brooklyn’, ‘NY’, ‘United States’, ‘646.296.1572’, ‘’ , ‘tom@bluriver-inc.com’, ‘English’, ‘http://www.blueriver-inc.com’, true, false, true, false, ‘special’, ‘’, 0);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

    << data successfully sent >>

     ...

See also

Web Activation, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname, GetWebActivation


SetCheckInterval
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You can overwrite the default interval with an own interval.

Name

SetCheckInterval

Purpose

Sets the interval for automatic validates in a concurrent user module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID of a concurrent user module
Interval | Integer | 120 | The interval in seconds

Returncode

Returncode Type Integer | Note
0 | Interval successfully set
> 0 | Error occurred, see list of return codes

Usage

To change the current checking interval.

Sample

  iRes := lic.SetCheckInterval (‘D1006’, 120);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

     << interval successfully set to 2 minutes >>

     ...

See also

Concurrent user, CheckInterval

.


SetConfig
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

See full description - Store data in the license file

Name

SetConfig

Purpose

Save data in the license file

Params

Parameter | Type | Example | Note
Configname | String | DBPassword | Unique configname
Configvalue | String | Secret | The value as string
IsVisible | Boolean | False | Don’t show that config in License Viewer (recommended for passwords and other secret information)

Returncode

Returncode Type Integer | Note
All values | See list of return codes

Usage

Insert a new config with name, value and visibility information. If the config with the specified name does not exist it’s automatically added.

Update the value and visibility of an exisiting config.

Sample

  iRes := lic.SetConfig(‘DBPassword’, ‘secret’, false);

  if iRes <> 0 then

  begin

     << an Error occurred >>

     ...

  end

  else

  begin

     << the config is successfully added or updated >>

     ...

See also

Store data, GetConfig, DeleteConfig,ExistsConfig, IsConfigVisible

If the ID (configname) already exists, the existing value (configvalue) is updated with the new value.


SetDiffPct
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

SetDiffPct

Purpose

Sets the tolerance in percent for automatic validates in a concurrent user module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID of a concurrent user module
Pct | Integer | 10 | The tolerance in percent

Returncode

Returncode Type Integer | Note
0 | Tolerance successfully set
> 0 | Error occurred, see list of return codes

Usage

To change the current tolerance.

Sample

  iRes := lic.SetDiffPct (‘D1006’, 10);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

     << interval successfully set to 2 minutes >>

     ...

See also

Concurrent user, CheckInterval, DiffPct


SetEndVerificationOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Terminate a regular online check on a specific date. After this date, the regular online check is terminated. The date, when the online check stops, can be retrieved with GetEndVerificationOfModule.

The next planned online check can be retrieved with NextVerificationOfModule.

For a complete description see chapter regular online checks.

Name

SetEndVerificationOfModule

Purpose

Property to get and set the date when the last online verification for the specified module will occur. After this date no online checks are done.

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Unique ModuleID

Returncode

Returncode Type Integer | Note
0 | There is no information when the last online check will be done. Probably there was no successful CheckModuleSubscription or CheckModule before.
A date | Date, when the last online check is due

Usage

Inform the user when the last online check will be done

Sample

  dtLastCheck := lic.EndVerificationOfModule('QHD001');

  if ...

  end

See also

NextVerificationOfModule.,CheckModuleSubscription CheckModule, DeactivateModule, SetVerificationIDOfModule, VerificationOfModule, GetEndVerificationOfModule


SetLicViewerButton
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Defines the buttons, which are visible within the License Viewer. To invoke the License Viewer see ShowLicViewer or for EasyGo see SetRegisterSettings (LicViewerAllowed )

Name

SetLicViewerButton

Purpose

Disables or removes a button from the License Viewer.

Params

Parameter | Type | Example | Note
Button | Integer | 1 | The button code: 1 = Activate/Deactivate - Button 2 = Activation Key - Button 3 = Info - Button 4 = Options - Button 5 = Help – Button (no longer in use) 6 = Transfer/Adopt/Deactivate – Button 7 = Refresh - Button
Value | Integer | 0 | The show/visible type: 0 = invisible 1 = visible but never active 2 = visible and active

Returncode

Returncode Type Integer | Note
0 | Button mode successfully set
4101 | A parameter is invalid. Only the values described above are valid.
Other value | Error occurred, see list of return codes

Usage

To customize the License Viewer as a real viewer without the ability to change something. Only some administrative users will get the License Viewer with activated buttons to change things.

Note: You can’t disable or remove the Close – Button.

Sample

  iRes := lic.SetLicViewerButton(1 , 0); // do not show the activate button

  if iRes = 0 then

     iRes := lic.SetLicViewerButton(2 , 0); // do not show the enter key button

  if iRes = 0 then

     iRes := lic.SetLicViewerButton(3 , 0); // do not show the info button

  if iRes = 0 then

     iRes := lic.SetLicViewerButton(4 , 2); // show the options button

  if iRes = 0 then

     iRes := lic.SetLicViewerButton(5 , 2); // show the help button

  if iRes = 0 then

     iRes := lic.SetLicViewerButton(6 , 2); // show the Transfer/Adopt button

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

     << Buttons successfully set, showing License Viewer>>

    lic.ShowLicViewer;

     ...

See also

ShowLicViewer

The help button is no longer available due to the fact that we do not distribute CHM files any longer.


SetLogging
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

SetLogging

Purpose

Sets the logging parameters for this workstation.

Params

Parameter | Type | Example | Note
bOn | Boolean | true | If bOn is set then the Logging on this client is activated. bOn = false will deactivate the logging.
sLogpath | String | C:\log\ | Path in which all new Log-files will be stored. Only used when bOn is true

Returncode

Returncode

None

Usage

To turn logging on or off

This call changes local registry values that control the Licence Protector logging.

Note: It is not possible to reactivate the logging after you have turned it off using SetLogging. It is not possible to switch pathes during runtime. In this cases the application has to be restarted to have this changes take effect.

It is possible to use this command before a license file has been opened.

Sample

  lic.SetLogging(true, ‘c:\temp\log\’);

  << Logging now activated >>

  …

  << Now deactivate the logging>>

  lic.SetLogging(false, ‘’;

  ...

See also

Error tracking


SetRegisterClearExpiryWarnings
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command removes all time dependent warnings, defined with SetRegisterExpiryWarning.

Name | SetRegisterClearExpiryWarnings
Purpose | Deletes all time dependent warnings
Params | None
Returncode | None
Sample | lic.SetRegisterClearExpiryWarnings ;
See also | SetRegisterExpiryWarning, RemoveExpiryWarningCommit


SetRegisterSerialNo
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This function can be used, to pass on a Serial Number to the EasyGo dialog (defined with SetRegisterSettings). It can be used in case your application has already stored the Serial Number. It saves the user to type in the Serial Number again.

Name

SetRegisterSerialNo

Purpose

Pass over the Serial Number to the EasyGo dialog.

Params

Parameter | Type | Example | Note
Serial Number | String | YkGEz-5EPj3-9E7In-3tI8X-RQU5k-6m140 | Must be a Serial Number
AllowChange | Boolean | false | defines, if the user can change/modify the Serial Number in the activation dialog or not.

Returncode

Returncode Type Integer | Note
0 | Serial Number successfully set
Other value | Error occurred, see list of return codes

Usage

To change the current language for messages and the licenseViewer

Sample

  iRes := lic.SetRegisterSerialNo('YkGEz-5EPj3-9E7In-3tI8X-RQU5k-6m140',false);

  if iRes <> 0 then

  begin

    << an error occurred >>

     ...

  end

  else

  begin

     << Start EasyGo dialog >>

     ...

See also

SetRegisterSettings, PrepareAndCheck


SetRegisterExpiryWarning
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Defines a time dependent event to pop-up a message for time limited full versions. The number of events is not limited.

The following conditions have to be true that the message appears:

·product must be activated (status of activation = done)

·product must be time limited

·the expiry date must be in the time frame defined. Alternatively a single date for the event can be defined

·User did not confirm the message yet

If the user confirms the message (by checking: Don't show this information again), then the message does not pop-up again.

Click to enlarge

User confirms message

Before you configure the warning, retrieve the language, the user selected using GetLanguage

Name

SetRegisterExpiryWarning

Purpose

defines a time dependent event to pop-up a warning message

Params

Parameter | Type | Example | Note
Name | String | myapp | Name or ID of the warning message. Stores information in the registry when user confirms the message hkey_current_user\software\LP\ExpWarn\myapp-m1 You have to specify a new name for every message - e.g. myapp-m2, myapp-m3
DaysSince | Integer | 10 | First day, relative to the expiry date, when the message should appear.
DaysUpto | Integer | 5 | Last day, relative to the expiry date, when the message should appear.
Header | String | Subscription about to expire | Headline
Info | String | Renew your subscription now! | Subheader
Text | String | Your subscription will expire in 10 days. To ensure continuous work, renew your subscriptions now.\n\nOnce your subscription has expired, the product will stop working completely. | Tex information. Text is automatically wrapped. To include a line break use \n
EventDate | Date |  | Instead of using the expiry date to calculate the time frame, the event date is used. Example: You want to pop-up a message 10 days before Christmas. Set the expiry date to 12/24/2010.

Returncode

Returncode Type Integer | Note
0 | The event was set successfully
All other values – see return codes | The operation was not successful

Sample

  iRes := lic.SetRegisterExpiryWarning (‘myapp-m1’,10,5,'Subscription about to expire','Renew your subscription now!','Your subscription will expire in 10 days. To ensure continuous work, renew your subscriptions now.\n\nOnce your subscription has expired, the product will stop working completely.',0);

See also

RemoveExpiryWarningCommit, SetRegisterClearExpiryWarnings

·All events can be removed with SetRegisterClearExpiryWarnings

·All user confirmations can be removed with RemoveExpiryWarningCommit


SetSubGraceDays
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Set the grace period - details see CheckModuleSubscription. You can also set the grace period in the project template using <SubGraceDays>

Name

SetSubGraceDays

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Days | Integer | 5 | set grace period in days

Returncode

Returncode Type String | Note
Integer | 0 = command was successful Other values see list of return codes

Usage

E.g. implement a good and bad value anti-cracker strategy

Sample

 lic.SetSubGraceDays (‘D1001’,5);

  ...

See also

CheckModuleSubscription, Getval - Token SGD, SGP, GetRemainingSubGraceDays


SetVal
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

This command allows to change a lot of properties of the license file and modules.

This command can be blocked for security reasons either in the license file template template with the value AllowSetVal Set <AllowSetVal>No</AllowSetVall>

or within the License Generator. To read the values use GetVal. See also Anti Hacker Strategies

Licence Generator,

Name

SetVal

Purpose

Sets values in modules or the license file

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested. If empty the call is supposed to set a value from the license file
Token | String | TLI | The token. See token list
Value | String | 200 | The value as a string

Returncode

Returncode Type Integer | Note
0 | The module or license was successfully changed
4101 | One or more parameters are invalid, perhaps the token is unknown or the Value could not be converted to the required type
4099 | This module type does not exists
4102 | Your Licence Protector Edition does not allow to perform this operation
All other values – see return codes | The operation was not successful

Usage

Alters a module or change values in the license.

Sample

  iRes := lic.SetVal(‘D1001’, ‘TLI’, ‘200’);

  << the total licenses of module D1001 are set to 200 >>

  ...

See also

Altering modules, Token list, AddModule, DeleteModule, GetVal

See also

Token List SetVal
GetVal


SetVerificationProduct
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with SetVerificationIDOfModule

Name

SetVerificationProduct

Purpose

Sets the Product for the CheckLicence call. That is needed for the “Adopt”-Button on the License Viewer

Params

Parameter | Type | Example | Note
ID | String | D1001 | This value is used for the next “Adopt” action

Returncode

Returncode Type Integer | Note
0 | The Verification Product was successfully set
All other values – see return codes | The operation was not successful

Usage

Sets the value that is necessary for the next implicit CheckLicence call triggered by the license Viewers “Adopt” button

Notice: You should explicitly set the value in the CheckLicence call, even if you have set it with SetVerificationProduct

Notice: A CheckLicence-call will do an implicit SetVerificationProduct

Sample

  iRes := lic.SetVerificationProduct(‘D1001’);

  if iRes = 0 then

  begin

     << Verification Product successfully set. license Viewers Adopt now has the necessary parameter. >>

  ...

  end

See also

SetVerificationID, CheckLicence, Deactivatelicense, licenseVerification, NextVerification


SetVerificationOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Set the status of the regular online check. It could also be set to a default value in the project template using <ModuleVerification>.

You can retrieve the status using GetVerificationOfModule

For a complete description see chapter regular online checks.

Name

SetVerificationOfModule

Purpose

Property to set the state of the license regarding online verifications used in combination with CheckModuleSubscription or CheckModule

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Unique ModuleID
Status | Integer | 1 | 0 = Regular online verification is off 1 = Regular online verification is enabled 2 = Frozen (license is locked) 3 = Regular online verification is terminated

Returncode

Returncode Type Integer | Note
0 | The verification ot the product was successfully set
All other values – see return codes | The operation was not successful

Sample

  iRes := lic.SetVerificationOfModule('QHD001',1);

   if iRes = 0 then

  begin

     << Online verification enabled >>

  ...

  end

See also

CheckModuleSubscription, CheckModule, DeactivateModule, GetVerificationOfModule, NextVerificationOfModule, VerificationOfModule, SetVerificationIDOfModule


SetVerificationIDOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

SetVerificationIDOfModule

Purpose

Sets the Serial Number / ID for the Transfer License Button in the License Viewer

Params

Parameter | Type | Example | Note
ModuleID | String | QHD001 | Should be the main module ID - retrieve it with MainModuleID
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which was used to activate the product. Retrieve the Serial Number / ID with GetSerial

Returncode

Returncode Type Integer | Note
0 | The verification ot the product was successfully set
All other values – see return codes | The operation was not successful

Usage

Sets the value that is necessary for the next implicit CheckLicence call triggered by the license Viewers “Adopt” button

Notice: You should explicitly set the value in the CheckLicence call, even if you have set it with SetVerificationProduct

Notice: A CheckLicence-call will do an implicit SetVerificationProduct

Sample

  iRes := lic.SetVerificationIDOfModule(‘QHD001’,'yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R');

  if iRes = 0 then

  begin

     << License Viewer now has the necessary parameter. >>

  ...

  end

See also

VerificationOfModule


ShowLicViewer
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Invokes the inbuilt License Viewer. You can customize the buttons which are visible, with SetLicViewerButton. To invoke the licenseViewer in EasyGo see SetRegisterSettings (LicViewerAllowed)

Name | ShowLicViewer
Purpose | Shows the License Viewer.
Params | None
Returncode | None
Usage | To check the licenses, users and items and to add activation keyActivation Keys
Sample | lic.ShowLicViewer;
See also | Activation keyActivation Keys, License Viewer, SetLicViewerButton, SetLanguage

To use the License Viewer, the license file needs to be opened first with one of the Prepare commands. See - open a license file.


ShowMessagePage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to display a message in a screen which uses the same design as EasyGo.

Tips

·Use GetLanguage to retrieve the language the user selected

·Use SetRegisterSettings to define the logo image

·Use ShowStartErrorPage to display a standard error screen

·Use SetCustomerText to change the wording on default screens

Name

ShowMessagePage

Purpose

Shows a message in an EasyGo-like screen

Params

Parameter | Type | Example | Note
Title | String | ‘Attention’ | The title of the message.
Header | String | ‘Something happened…’ | The header of the message.
Text | String | ‘This is a sample text’ | The text of the message.
ShowLicViewer | Boolean | True | A link to open Licence Protector’s licenseViewer can be displayed if true.

Returncode

Returncode Type Integer | Note
0 | Ok
8194 | Function is not implemented in this type of Licence Protector

Usage

ShowMessagePage should be used to display messages in an EasyGo environment. SetRegisterSettings should be used to set properties like the image on the side.

Sample

  << you want to inform the user about something >>

  ShowMessagePage(‘Attention’, ‘Something happened…’, ‘This happened:…’, false);

  ...

See also

ShowStartErrorPage

Click to enlarge

Customized screen


ShowStartErrorPage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows displaying an error message in a screen which uses the same design as EasyGo. The error number must be a valid error code - see list of error codes.

Use SetCustomerText to change the wording on default screens

Example

Error Code 32 (no free license) would pop-up this error screen.

Name

ShowStartErrorPage

Purpose

Shows a Licence Protector error message in an EsayGo-like page.

Params

Parameter | Type | Example | Note
ErrorNo | Integer | 16 | Errornumber

Returncode

Returncode Type Integer | Note
0 | Ok
8194 | Function is not implemented in this type of Licence Protector

Usage

ShowStartErrorPage should be used to display error messages in an EasyGo environment. SetRegisterSettings should be used to set properties like the image on the side.

Sample

  iRes := lic.Validate(‘D1001’, ‘’, true);

  if iRes > 1 then

  begin

    ShowStartErrorPage(iRes);

  end

  else

  begin

     << successfully validated >>

     ...

  ...

See also

Error numbers, SetRegisterSettings, PrepareAndCheck (EasyGo)

Note

The user can terminate the screen only with the END button. The error code is always 0 (and not 4) to indicate, that the message was displayed properly.


ShowWAProgressPage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Turn On / Off the following screen during the activation process.

or with EasyGo, the screen would look like this

Activation in progress

Activation in progress

Name

ShowWASProgressPage

Purpose

Property to get or set the information if the Progress page on the Web Activation communication mask will be displayed

Params

None

Returncode

Returncode Type Boolean | Note
True | The Progress page will be shown
False | The Progress page will not be shown. The information and possibility to change proxy settings is done by the application

Usage

Possibility to change the deployment settings.

Sample

  bShowPage := lic.ShowWASProgressPage;

  if not bShowPage then

  begin

    << The page will not be displayed. >>

     ...

  end

  else

    << The page will be displayed. >>

     ...

See also

ShowWAStartPage, ShowWASResultPage

The setting is stored in the license file and will be used again for all following activation commands

A default value can be defined in the project template <ShowWASProgressPage>

See also

ShowWAResultPage
ShowWAStartPage


ShowWAResultPage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Turn On / Off the following screen during the Web Activation process.

Name

ShowWASResultPage

Purpose

Property to get or set the information if the Result page on the Web Activation communication mask will be displayed

Params

None

Returncode

Returncode Type Boolean | Note
True | The Result page will be shown
False | The Result page will not be shown. The information and possibility to change proxy settings is done by the application

Usage

Possibility to change the deployment settings.

Sample

  bShowPage := lic.ShowWASResultPage;

  if not bShowPage then

  begin

    << The page will not be displayed. >>

     ...

  end

  else

    << The page will be displayed. >>

     ...

See also

ShowWASProgressPage, ShowWAStartPage

The setting is stored in the license file and will be used again for all following activation commands

A default value can be defined in the project template <ShowWASResultPage>

See also

ShowWAProgressPage
ShowWAStartPage


ShowWAStartPage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Turn On / Off the following screen during the Web Activation process. Depending on the type of the online process the text could vary (a module, a key, a license has to be activated online).

or with EasyGo, the screen would look like this

Click to minimise

Online Activation - Change Proxy Server

Name

ShowWASStartPage

Purpose

Property to get or set the information if the Start page on the Web Activation communication mask will be displayed

Params

None

Returncode

Returncode Type Boolean | Note
True | The Start page will be shown
False | The Start page will not be shown. The information and possibility to change proxy settings is done by the application

Usage

Possibility to change the deployment settings.

Sample

  bShowPage := lic.ShowWAStartPage;

  if not bShowPage then

  begin

    << The page will not be displayed. >>

     ...

  end

  else

    << The page will be displayed. >>

     ...

See also

ShowWASProgressPage, ShowWASResultPage

The setting is stored in the license file and will be used again for all following activation commands

A default value can be defined in the project template <ShowWASStartPage>

See also

ShowWAProgressPage
ShowWAResultPage


StopConcurrentUsage
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

StopConcurrentUsage

Purpose

Stops the concurrent usage of a module for a user

Params

Parameter | Type | Example | Note
ModuleID | String | D1006 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type Integer | Note
0 | Ok, User no longer use this module
256 | Module with the specified user is not recognized as running concurrent user

Usage

An alternative for quit which stops all local concurrent users. StopConcurrentUsage only stops the specified user for the specified module and frees that one slot for other users.

Sample

  iRes := lic.StopConcurrentUsage(‘D1006’, ‘’, true);

  if iRes = 0 then

  begin

     << successfully removed >>

     ...

  end

  else if iRes = 256 then

  begin

     << user on that module probably wasn’t active >>

     ...

  end

  else

  begin

     << another error occurred >>

     ...

See also

Concurrent User Modules, Validate, Quit, GetCUIsRunning, GetCUNextValidate, GetCULastValidate, GetCURunCounter

If you want to remove the user from all modules, use QUIT at the end of your application.


SysdateChanged
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows to check for system date modification - see details

Name

SysdateChanged

Purpose

Property to check whether the system date is tampered

Params

None

Returncode

Returncode Type Boolean | Note
True | The system date was manipulated
False | The system date was not manipulated

Usage

You want to check explicitly if a manipulation takes place.

Sample

  bTampered := lic.SysdateChanged;

  if bTampered then

  begin

    << Manipulation!!! React now ... >>

     ...

  end

  else

    << it seems ok >>

     ...

See also

CheckSysdateChanged, Prepare


TakeOverLicFile
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command converts an old license file of a version 2.x and 3.x into version 4. The complete file structure of the old file (including keys, system data etc.) is transferred to the new file. Even old Serial Numbers can be used after the conversion is done.

It requires to additionally install and register the file LicProtector314.dll. You need a license file version 4 to move a version 2.x or 3.x into the new file format.

Before you can use the API command, you have to open the new license with one of the Prepare commands.

Suggested workflow

·Open the new license file (version 4) with PrepareForce

·Open the old license file (version 2.x or 3.x) with PrepareForce

·Use TakeOverLicFile

·Close all license files using Quit

Name

TakeOverLicFile

Purpose

Converts license file version 2.x and 3.x into version 4.x

Params

Parameter | Type | Example | Note
File_to_take_over | String | F:\mylicv3.lic | Old license file name The full path to the old license file. See details for UNC pathnames
ReadKey_or_PSK | String | r1lkYAp1xG QN81fBrcZ 1dfXtw1doy 3Z1l4KH1... | ReadKey of the old license file. For license files created without an ReadKey (security level = 0) the PSK has to be used
SecurityLevel | Integer | 1 | Security Level ·1 = Advanced = default for projects using a ReadKey ·0 = Basic = old projects using a PSK
File_to_take_over_has_at_least_version4 | Boolean | False | Old license file is version 4 or higher Use false to convert license files from version 2.x and 3.x.
Keep_PSK_of_file_to_take_over | Boolean | False | Defines if the PSK (key encryption) of new file should be used or if the PSK of the old file should be kept ·Use false to keep the PSK if you want to use old Serial Numbers / Activation Keys with the new file ·Use true to use the PSK generated with the new file template

Returncode

Returncode Type Integer | Note
0 | License conversion was successful
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.TakeOverLicFile(‘F:\mylicv3.lic’, ‘r1lkYAp1xG

QN81fBrcZ...’,1,false, false);

  if iRes = 0 then

  begin

    << license conversion successful >>

     ...

  end

    << other errors >>>

     ...

See also

Additional information

·PSK (Project Secure Key) is the encryption of the keys like Serial Number

·Read / Write Key is the encryption of the license file. Only in projects of version 1 and 2 the PSK was also used to encrypt license file


TamperDetection
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

TamperDetection

Purpose

Property to get or set the license file manipulation detection

Replaces property CheckLicChanged

Params

None

Returncode

Returncode Type Boolean | Note
True | Detection of manipulation is enabled
False | Detection of manipulation is disabled

Usage

Switch on detection of manipulation of the license file.

Sample

Get:

  bIsCheckOn := lic.TamperDetection;

  << use Boolean bIsCheckOn >>

Set:

  lic.TamperDetection := true;

See also

Tamper Detection, licenseTampered, Validate


TransferLicence
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Transfers a licence from PC A to PC B using EasyGo screens. This function requires the Activation Server 4.

·All screens, which handle the license transfer including error situations can be found here

·Implement license transfer - chapter Transfer a license from PC A to PC B

·Requires SetRegisterLicTransfer to define additional settings if a complete license file should be moved

Name

TransferLicence

Purpose

Transfers a license. Requires Activation Server 4

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Activation Server
Module ID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number. Retrieve the Serial Number with GetSerial

Returncode

Returncode Type Integer | Note
0 | License transfer was successful
3001-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.TransferLicence(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’,true, true);

  if iRes = 0 then

  begin

    << license transfer successful >>

     ...

  end

    << other errors >>>

     ...

See also

SetRegisterLicTransfer


TotalLicences
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

TotalLicences

Purpose

Gets the total licenses of the module.

Params

Parameter | Type | Example | Note
ModuleID | String | D1005 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
-1 | An error occurred, check LastReturncode
0 to 2147483648 | Total licenses of the module A yes-no-module returns 1 for yes, 0 for no

Usage

To check the numbers (in a counter and a yes-no-module) or to show the total amount of available licenses.

Sample

  iLics := lic.TotalLicences (‘D1005’);

  if iLics >= 0 then

  begin

     << use the extracted value >>

     ...

  end

  else

  begin

     iRes = lic.LastReturncode;

     << an error iRes occurred >>

     ...

See also

Remaininglicences, Module types


UploadLic
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command allows you to upload a complete license file (including all hidden information) to the Activation Server 4. It can be downloaded with the command DownloadLic.

This command requires a license file which was opened using one of the Prepare commands. A good idea is to upload a license file directly after an activation was done (see GetActionsOfLastPrepareAndCheck).

Name

UploadLic

Purpose

Uploads the license file up to the Activation Server 4. To identify the license, a unique ID is necessary .

Params

Parameter | Type | Example | Note
Projectname | String | demo-easygo | Projekt Name configured in the project.config file on the Activation Server 4. If empty the internal project name of the license file is used
ModuleID | String | QHD001 | module ID - If ModuleID is empty a CheckLicence call is used to locate the Activation
ID | String | IV0078 | unique ID to store the license file. Could be a customer ID or a Serial number. A value is mandatory
Name | String | default | name to identify the license file. One ID can store multiple files using different names like default-backup-January2010 default-backup-February2010 If the name field is empty then the name: default is used
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided in the DLL command DownloadLic. Should be maximum 40 characters.
bAllowCreateActivation | Boolean | true | True = Creates the license even if the unique ID does not exist on the Activation Server 4 False = Unique ID must exist on the Activation Server 4

Returncode

Returncode Type Integer | Note
0 | license file successfully uploaded
3001 | The Activation Server 4 was not reachable.
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
4101 | Field ID is empty
Other return codes | Operation failed, see list of return codes

Usage

Used to upload a complete license to the Activation Server 4. It can be edited on the Activation Server 4 and changes could be downloaded using the call DownloadLic.

Sample

  iRes := lic.UploadLic(‘’, ‘QHD001’, ‘IV0078’, ‘Default’, ‘mypassword76R§’,‘false‘);

if iRes = 0 then

begin

<< Licence successfully uploaded for editing on the Activation Server 4 >>

...

end

else if iRes = 3001 then

begin

<< Activation Server 4 could not be reached, please check connection >>

...

end

else

begin

<< other errors >>>

...

See also

DownloadLic, WebRegisterEXT

The following values in the project.config file on the Activation Server 4 are important for the license file upload:

· LvsDefaultName

· LvsOverwriteServerChanges

· MultipleLVS

The date of the last successful file upload is displayed in the License Viewer


UseLocalIEProxy
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

UseLocalIEProxy

Purpose

Property to get or set the information if the proxy configured in Internet Explorer is used for the Web Activation communication.

Params

None

Returncode

Returncode Type Boolean | Note
True | Yes the Internet Explorer proxy settings will be used
False | No, LocalProxyServer and LocalProxyPort will be used

Usage

Change the connection setting individually for every user.

Sample

  lic.UseLocalProxy := true;             // use a proxy

  lic.UseLocalIEProxy := false;          // but not the proxy from Internet Explorer

  lic.LocalProxyServer := ‘192.168.1.1’; // set the proxy

  lic.LocalProxyPort := 80;              // set the port of this proxy server

See also

Web Activation, WebServiceURL, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgress Page ShowWAResultPage, UseLocalProxy, LocalProxyServer, LocalProxyPort, Projectname


UseLocalProxy
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

UseLocalProxy

Purpose

Property to get or set the information if a proxy for the Web Activation communication is used

Params

None

Returncode

Returncode Type Boolean | Note
True | Yes a proxy is used
False | No no proxy is used

Usage

Change the connection setting individually for every user.

Sample

  lic.UseLocalProxy := true;             // use a proxy

  lic.UseLocalIEProxy := false;          // but not the proxy from Internet Explorer

  lic.LocalProxyServer := ‘192.168.1.1’; // set the proxy

  lic.LocalProxyPort := 80;              // set the port of this proxy server

See also

Web Activation, WebServiceURL, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgress Page ShowWAResultPage, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname


UseMapi
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Property to enable MAPI for e-mail activation instead of mailto: . For full details see: Activation Options - additional information

If MAPI is not available on the end user system then mailto: is used. This is the default value.

Name

UseMapi

Purpose

Property to get or set the information to use MAPI

Params

None

Returncode

Returncode Type Boolean | Note
True | MAPI is used
False | MAPI is not used

Usage

Allows to send e-mails without restriction of text size

Sample

  lic.MAPI := true;

See also


Validate
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

Validate

Purpose

Checks if a module could be used

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name

Returncode

Returncode Type Integer | Note
All values | See list of return codes

Usage

To validate a module for a specified user or item

Sample

  iRes := lic.Validate(‘D1001’, ‘’, true);

  if iRes = 0 then

  begin

     << successfully validated >>

     ...

  end

  else if iRes = 1 then

  begin

     << successfully validated, it’s a demo version >>

     ...

  end

  else

  begin

     << validation failed, usage of module not allowed >>

     ...

See also

Prepare, Quit, ValidateEx, ValidatesYes

Yes / No module

The return codes for a Yes/No module (module type = 4) are:

·0 = module is Yes

·1 = module is Yes AND it is a demo version

·3 = module is No


ValidateAndDecrease
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Allows to decrease an counter module by 1.

See chapter Limit number of program starts. To decrease the counter module for other values use SetVal, Token TLI.

Name

ValidateAndDecrease

Purpose

Validates a counter module and decrease the number of licenses by 1.

Params

Parameter | Type | Example | Note
ModuleID | String | D1004 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
All values | See list of return codes
32 | Number of licenses is 0 and can’t be decreased any more

Usage

ValidateAndDecrease is intended to count down a counter modules (Type 3). If should not be used with other module types.

ValidateAndDecrease could be used to allow a module or programme to be started only a limited number of times.

Sample

  iRes := lic.ValidateAndDecrease(‘D1003’);

  if iRes = 0 then

  begin

     << successfully validated, the number of licenses is decreased by 1 >>

     ...

  end

  else if iRes = 1 then

  begin

     << successfully validated, it’s a demo version and the number of licenses is decreased by 1 >>

     ...

  end

  else if iRes = 32 then

  begin

     << successfully validated, but the number of licenses is 0 and can not be decreased any further >>

     ...

  end

  else if iRes = 4096 then

  begin

     << D1003 seems to be not a Module of type 3. Use Validate instead… >>

     ...

  end

  else

  begin

     << validation failed, usage of module not allowed >>

     ...

See also

Prepare, Quit, ValidateEx, Validate, ValidatesYes


ValidateEx
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

ValidateEx

Purpose

Checks if a module is available and returns the Tag value of the specified module

Params

Parameter | Type | Example | Note
ModuleID | String | D1001 | Unique ModuleID – identifies the module to be tested
Name | String | Tom | The user or item name to check for
UseWindowsUser | Boolean | False | Determines if the windows login name should be used as name
TagValue | String, output | Empty | A variable which can absorb the Tag value of the module

Returncode

Returncode Type Integer | Note
All values | See list of return codes

Usage

To validate a module for a specified user or item and get the Tag value at the same time

Sample

  sTag := ‘’;

  iRes := lic.ValidateEx(‘D1001’, ‘’, true, sTag);

  if iRes = 0 then

  begin

     << successfully validated, use sTag >>

     ...

  end

  else if iRes = 1 then

  begin

     << successfully validated, it’s a demo version, use sTag >>

     ...

  end

  else

  begin

     << validation failed, usage of module not allowed >>

     ...

See also

Prepare, Quit, Validate, ValidatesYes

Some compilers (known for Visual Studio C++ 2007 an newer) crash when using this command. The reason is the tag value parameter. Use Validate instead. The command has the same parameters but no tag value parameter.

Yes / No module

The return codes for a Yes/No module (module type = 4) are:

·0 = module is Yes

·1 = module is Yes AND it is a demo version

·3 = module is No


WebRegisterExt
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Command to make an online activation of a module, download a license file and allow a license move. It will always connect to the Activation Server 4, download the license file (if specified) and activate the product. For activation, the workflow rule defined on the Activation Server 4 is used - see Project.config file

See also CheckModuleSubscription which makes an online validation of a module.

Name

WebRegisterExt

Purpose

Contacts the Activation Server 4 to activate a module.

Params

Parameter | Type | Example | Note
Projectname | String | demo-easygo | Projekt Name configured in the project.config file on the Activation Server 4. If empty the internal project name of the license file is used
ModuleID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number
eMail | String | john@mycompany.com | eMail address, currently only to be protocolled in the Web Activation server
RequestLicData | Boolean | True | If set to true, the license file is downloaded from the Activation Server 4
Name | String | default | name to identify the license file. One ID can store multiple files using different names like activation30
Encryption Code | String | this is like a password string | ensures, that a file can only be downloaded when a password is provided in the DLL command DownloadLic. Should be maximum 40 characters
DownloadFull | Boolean | True | If true, the complete license file is downloaded it a license file exists for the specified ID and Name. Otherwise only the changes made on the Activation Server 4 are downloaded and updated in the local license file

Returncode

Returncode Type Integer | Note
0 | Module successfully activated
3001 | The Activation Server 4 was not reachable.
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to activate one or more modules.

Sample

  iRes := lic.WebRegisterExt(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’, ‘john@mycompany.com’,True,'activation30','thismypassword76R§',true);

  if iRes = 0 then

  begin

    << Module D1001 successfully activated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Web Activation could not be reached, please check connection >>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

GetWebActivation, Web Activation, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname

To send the customer name / address use SendCustomerInfo

Ports and Proxy Settings

The Online Activation uses an http request on Port 80 to communicate with the Activation Server. A router with a standard firewall (IP-Filter) will not detect the difference to a Browser request and let the activation pass. A local personal firewall like McAfee or Norton will pop-up and ask, if the request should be permitted. Only a 'real' application firewall will block the request and an administrator has to open port 80.

Proxy settings are retrieved from the Browser but can be changed with the commands LocalProxPort, LocalProxyServer, UseLocalIIEProxy, UseLocalProxy.

Only the Licence Protector DLL can talk to the Activation Server.

The WebRegisterExt command would display screens indicating that an online validation is done. The screens can be suppressed using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage


WebServiceURL
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Name

WebServiceURL

Purpose

Property to get or set the URL to reach the Web Activation

Params

None

Returncode

Returncode Type String | Note
URL | This URL is used to reach the Web Activation service e.g. http://myapp.mycom.com/lpweb/lpws.asmx

Usage

To read or change the URL in the license file.

Sample

  sURL := lic.WebServiceURL;

  if sURL = ‘’ then

  begin

    << Wrong value, provide a valid value ... >>

     Lic.WebServiceURL := ‘http://mycom.com/hereitis/lpws.asmx’;

     ...

  end

  else

    << it seems ok >>

     ...

See also

Web Activation, WebRegister, ApplyActivationKey, ApplyActivationKeyForProject, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname

The URL is sent to the default port which is normally port 80 but you can configure any port for the http: request.

You can specify a specific port at the end of the servername with :portname

http://myapp.mycom.com:728/lpweb/lpws.asmx


WriteCache
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This command saves the modifications from the cache to the hard disk. The cache mode has to be activated first using BeginReadCache or BeginCache.

Name

WriteCache

Purpose

Save modified cache values to the hard disk

Params

None

Returncode

Returncode Type Integer | Note
0 | The cache was successfully updated with the latest license file values
Other return codes | Cache activation failed, see list of return codes

Usage

Save modified cache values to the hard disk after DLL commands have modified values

Sample

  iRes := lic.BeginCache;

  << start reading values>>

  iRes := lic.WriteCache;

  << start reading values>>

  iRes := lic.EndCache;

See also

GetCacheMode, BeginReadCache, BeginCache, EndCache, RevertCache, RefreshCache


Commands grouped by application range
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find below commands grouped by their application range. This helps to find all related commands for a specific task.

See also
Function reference in alphabetical order


Activation Server commands
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Find below a summary of calls you can use to communicate with the Activation Server 4 or commands to modify activation settings.

Click on the [image] sign on the left side to get all DLL commands related to the Activation Server.


CheckLicence
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Command no longer in use

Replaced with CheckModule

Allows to validate, if a license was locked or not. Details see chapter Lock a license / Regular online check.

Normally the test is done without a value for the parameter moduleID. Using a module ID creates the same workflow on the Activation Server 4 like a product activation with PrepareAndCheck or WebRegisterExt - e.g. copy protection is activated or additional keys like deleting Demo Version flag are sent.

Name

CheckLicence

Purpose

Contacts the Licence Protector Web Activation server to validate a license. This function has to be used to implement “Moving licenses” and ongoing checks (“renting your software”).

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Web Activation Server
ID | String | Abc | Identifier which is used to check and register this license
Module ID | String | D1001 | This is the product-name / module ID for the config-autogenerator.xml. It may be empty.
ForceCheck | Boolean | False | If true, CheckLicence will always connect to the Activation Server 4, even if it is not necessary regarding the current values

Returncode

Returncode Type Integer | Note
0 | CheckLicence successful: The online-Validation succeeded or it was not necessary to check the state online
3001 | The Web Activation Server was not reachable.
3010 | That ID is already used e.g. by another computer.
3018 | That ID is locked.
3002-3999 | Errors on the Web Activation Server, see Web Activation Documentation
Other return codes | Operation failed, see list of return codes

Usage

Used to validate the license.

Sample

  iRes := lic.CheckLicence(‘’, ‘abc4711’, ‘’, false);

  if iRes = 0 then

  begin

    << license successfully validated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Web Activation could not be reached, please check connection >>

     ...

  end

  else if iRes = 3010 then

  begin

    << that license is already in usage. Transfer license and then it is free for this computer >>

     ...

  end

  else if iRes = 3018 then

  begin

    << that license is locked on the Web Activation server.>>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

licenseVerification, NextVerification, Deactivatelicense, SetVerificationID, SetVerificationProduct, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname

Ports and Proxy Settings

The Online Activation uses an http request on Port 80 to communicate with the Activation Server. A router with a standard firewall (IP-Filter) will not detect the difference to a Browser request and let the activation pass. A local personal firewall like McAfee or Norton will pop-up and ask, if the request should be permitted. Only a 'real' application firewall will block the request and an administrator has to open port 80.

Proxy settings are retrieved from the Browser but can be changed with the commands LocalProxPort, LocalProxyServer, UseLocalIIEProxy, UseLocalProxy.

Only the Licence Protector DLL can talk to the Activation Server.

The CheckLicence command would display screens indicating that an online validation is done. The screens can be suppressed using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage

The CheckLicence command triggers the activation workflow file on the server, e.g. activates copy protection and sends out the keys defined in this file.


VerificationOfModule
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command GetVerificationOfModule and SetVerificationOfModule

Enables or disables the regular online check.

Name

VerificationOfModule

Purpose

Property to enable or disable the regular online check

Params

None

Returncode

Returncode Type String | Note
True | Regular Online check is enabled
False | Regular Online check is disabled

Usage

Change / Retrieve the application version in the license file

Sample

Get:

  bIsCheckOn := lic.VerificationOfModule;

  << use Boolean bIsCheckOn >>

Set:

  lic.VerificationOfModule := true;

See also

SetVerificationIDOfModule, CheckModuleSubscription, CheckModule, DeactivateModule, NextVerificationOfModule,

·The current status can be retrieved using GetVerificationOfModule

·The online check can also be enabled in project template using <ModuleVerification>


Analyze an Activation Key
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

In case you provide an own screen to type in an Activation Key (e.g. because you have multiple applications on one CD), the key can be analyzed before it is used with ApplyActivationKey, ApplyInvisibleKey or ApplyActivationKeyForProject.

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.

Click on the [image] sign on the left side to get all DLL commands related to Analyze an Activation Key.


Cache Mode
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

All Licence Protector methods that do change data and have to store those data in the license file reread the complete license file from the hard disk before performing and writing the data back. This ensures that the file will always be consistent.

If several methods have to be called sequentially, for example the validation of several modules at application start, this procedure needs some time: If the security level advanced is used every call could take up to 1 second, as the complete file has to be decrypted. To speed up this process significantly, the cache mode could be used.

Use the write cache mode only in a single user environment as saving back the cache to the hard disk would overwrite all changes in the license file, which have been done by another computer in the network. Read cache can be used in multi user environment.

Important

·Use a cache only for the time you really need it - e.g. during program start to retrieve all modules. Close the cache as soon as possible with EndCache

·Before you use one of the Prepare commands to open a license file you have to close the cache with EndCache

·For a network license you can use the ReadCache. If a validate command would update the license file (e.g. because a new user is added), it updates the cache and as a next step, the license file would be automatically updated. There is a small chance that this data is lost in case another use would also be added in the same moment

·Never use the cache with concurrent user license

Click on the [image] sign on the left side to get all DLL commands related to Cache Mode.


Concurrent user testing
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Concurrent user testing is normally handled with default values but there are a lot of commands, where you have complete control, how the testing is done. Find below a summary of all DLL commands for concurrent user testing.

The concurrent user testing is explained in the chapter: How do I implement concurrent user testing

Click on the [image] sign on the left side to get all DLL commands related to Concurrent user testing.


Validate / PrepareAndCheck
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The following commands start the concurrent user testing:

· Validate

· ValidateEX

· PrepareAndCheck

If you set Quit to true in the PrepareAndCheck statement, the user would be instantly removed from the license file. It has the same effect like using the command Quit.


EasyGo Dialog
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The EasyGo dialogs can be customized to present the user a GUI with exactly the options, you need for your application. As different applications need different levels of customizations, there are several DLL commands for the customization.

Click on the [image] sign on the left side to get all DLL commands related to EasyGo.


SetRegisterHelp

Navigation: Function Reference and Error Codes > Commands grouped by application range > EasyGo Dialog:

fine alternative text for activation screen
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command SetCustomText

Allows defining an default text for an alternative text on the left side (white area) of the activation screen. With this command you can define only the text in ONE language.

If you use SetRegisterLanguages to allow the user to select multiple languages, you can specify the alternative text for each language using the command SetRegisterHelp L.

If you do not specify a default text, then the inbuilt default text for each language is used.

Click on the image to expand

Modify text for activation screen

Name

SetRegisterHelp

Purpose

Set help texts for the left side of the EasyGo form.

Params

Parameter | Type | Example | Note
HelpWelcome | String |  | Help text that is displayed on the left side of the EasyGo form on the first page that welcomes the user. If empty then the default text is used.
HelpExpired | String |  | Help text that is displayed on the left side of the EasyGo form on the page that is displayed if the license of the main module has expired. If empty then the default text is used.
HelpActivation1 | String |  | Help text that is displayed on the left side of the EasyGo form on the Activation page that handles the Serial Number input for all registration methods (Online, e-mail, Fax, Phone). This is the part above the Buy-Button. If empty then the default text is used.
HelpActivation2 | String |  | Help text that is displayed on the left side of the EasyGo form on the Activation page that handles the Serial Number input for all registration methodsOnline, e-mail, Fax, Phone). This is the part below the Buy-Button. If empty then the default text is used.
HelpUnlock | String |  | Help text that is displayed on the left side of the EasyGo form on the Unlock page that handles the Unlock Key input for the manual registration methods (e-mail, Fax, phone). If empty then the default text is used.
HelpDone | String |  | Help text that is displayed on the left side of the EasyGo form on the page that tells the user that the Activation has succeeded. If empty then the default text is used.
HelpErrorMsg | String |  | Help text that is displayed on the left side of the EasyGo form on the Error-Message page. If empty then the default text is used.

Returncode

Returncode Type Integer | Note
0 | Settings are successful
Other value | Error occurred, see list of return codes

Usage

To customize the EasyGo form. This call only is necessary if further explanation of the process has to be displayed for the user.

Sample

lic.SetRegisterHelp('', // Welcome

                   '', // Expired

                   '', // Activation1 (above Buy-Button)

                   '', // Activation2 (below Buy-Button)

                   '', // Unlock

                   '', // Successful

                   '') // Error-Message

...

See also

EasyGo, SetRegisterSettings, PrepareAndCheck


Define alternative text for activation screen

Navigation: Function Reference and Error Codes > Commands grouped by application range > EasyGo Dialog:

SetRegisterHelpL
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command SetCustomText

Allows defining an alternative text on the left side (white area) of the activation screen. With this command you can define the text for MULTIPLE languages. You should define an alternative text for each language you specified either with SetLanguage and/or SetRegisterLanguages.

Click on the image to expand

Modify text for activation screen

You have to use the command for each language.

Example

If you support the languages French, German and English you have to call SetRegisterHelpL 3 times for language 30000, 10000 and 20000.

If you do not specify an alternative text then

·the default text defined with SeRegisterHelp is used. If there is no default text then

·the inbuilt default text per language is used

Name

SetRegisterHelpL

Purpose

Sets the help texts for the EasyGo page for the specified language (PrepareAndCheck)

Params

Parameter | Type | Example | Note
Language | String | ‘2’ | You can use the language codes (e.g. en, de,..) or you can use the language numbers (e.g. 1, 2) as string - for a complete list of language codes see SetLanguage
HelptextBuy | String | ‘To buy you have to do the following…’ | Help text that is displayed on the left side of the EasyGo form on the Activation page that handles the Serial Number input for all registration methods (Online, e-mail, Fax, Phone). This is the part above the Buy-Button. If empty then the default text is used.
HelpWelcome | String |  | Help text that is displayed on the left side of the EasyGo form on the first page that welcomes the user. If empty then the default text is used.
HelpExpired | String |  | Text that is displayed on the “Expired” section of the EasyGo Form
HelptextActivation | String |  | Help text that is displayed on the left side of the EasyGo form on the Activation page that handles the Serial Number input for all registration methodsOnline, e-mail, Fax, Phone). This is the part below the Buy-Button. If empty then the default text is used.
HelpUnlock | String |  | Help text that is displayed on the left side of the EasyGo form on the Unlock page that handles the Unlock Key input for the manual registration methods (e-mail, Fax, phone). If empty then the default text is used.
HelpDone | String |  | Help text that is displayed on the left side of the EasyGo form on the page that tells the user that the Activation has succeeded. If empty then the default text is used.
HelpErrorMsg | String |  | Help text that is displayed on the left side of the EasyGo form on the Error-Message page. If empty then the default text is used.

Returncode

Returncode Type Integer | Note
0 | ok
8193 | The specified language is illegal
8194 | Function is not implemented in this type of Licence Protector

Usage

SetRegisterHelpL should be used to set individual help texts on the left side of the EasyGo Form (PrepareAndCheck) for different languages.

Sample

  iRes := lic.SetRegisterHelpL(‘2’, ‚Sample text fort he buy section’, ‚Sample text for the Welcome section’, ‘Sample text for the Expired section’, ‘Sample text for the Activation section’, ‘Sample text for the Enter Key section’, ‘Sample text for the Done section’, ‘Sample text for displaying an Error’);

 if iRes = 0 then

    // ok, no error

See also

SetRegisterHelp, SetRegisterLanguages, SetRegisterSettings, PrepareAndCheck (EasyGo), Language codes


Open a licence file

Navigation: Function Reference and Error Codes > Commands grouped by application range:

Open a license file
No contents entries on this page
Contents
Topic functions menu
Menu
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The prepare command opens a license file. There are different commands

·Open a license file with user interface (PrepareAndCheck)

·Open a license file without a user PrepareAdvanced

·Open a file which ignores errors during open (PrepareForce).

·Open a file with Prepare or PrepareSimple (not recommended, only for older version)

Click on the [image] sign on the left side to get all DLL commands related to Open a license file.


Validate a module
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Depending on the module type or usage different validate commands are available.

Click on the [image] sign on the left side to get all DLL commands related to module validation.


ValidatesYes
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command Validate / ValdidateEX

Name

ValidatesYes

Purpose

Checks if a yes/no module could be used and is set to yes.

Params

Parameter | Type | Example | Note
ModuleID | String | D1004 | Unique ModuleID – identifies the module to be tested

Returncode

Returncode Type Integer | Note
All values | See list of return codes
0 1 3 | Module is Yes Module is set to Demoversion Module is No

Usage

ValidatesYes is intended to validate yes/no modules (Type 4). It can not be used for modules of Type 1, 5 and 6 because these types need the user or item as parameter (Error 4096 is returned)

ValidatesYes can be replaced by a sequence of Validate() and Totallicenses().

Sample

  iRes := lic.ValidatesYes(‘D1004’);

  if iRes = 0 then

  begin

     << successfully validated, Module is Yes >>

     ...

  end

  else if iRes = 1 then

  begin

     << successfully validated, it’s a demo version and Module is Yes >>

     ...

  end

  else if iRes = 3 then

  begin

     << successfully validated, but the Module is No >>

     ...

  end

  else if iRes = 4096 then

  begin

     << D1004 seems to be not a Module of type 4. Use Validate instead… >>

     ...

  end

  else

  begin

     << validation failed, usage of module not allowed >>

     ...

See also

Prepare, Quit, ValidateEx, Validate


Commands no longer in use
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector is always backwards compatible. To ensure this, commands are seldom changed. Find below a list of all commands, which will still work but which have been replaced with commands with new functionality.


DeactivateLicence
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command DeactivateModule

Name

DeactivateLicence

Purpose

Contacts the Licence Protector Web Activation server to deactivate a license and therefore allow another computer to use that license. This function has to be used to implement “Moving licenses”.

Params

Parameter | Type | Example | Note
Projectname | String | Demo Project | projectname, if empty the internal projectname of the license file is used – identifies the project on the Web Activation Server
ID | String | Abc | Identifier which is used to check and deactivate this license

Returncode

Returncode Type Integer | Note
0 | CheckLicence successful: The online-Validation succeeded or it was not necessary to check the state online
3001 | The Web Activation Server was not reachable.
3015 | That ID could not be found in the database
3030 | The deactivation failed on the Web Activation server.
3002-3999 | Errors on the Web Activation Server, see Web Activation Documentation
Other return codes | Operation failed, see list of return codes

Usage

Used to transfer a license.

Sample

  iRes := lic.Deactivatelicense(‘’, ‘abc4711’);

  if iRes = 0 then

  begin

    << license successfully transfered >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Web Activation could not be reached, please check connection >>

     ...

  end

  else if iRes = 3015 then

  begin

    << that license was not validated before >>

     ...

  end

  else if iRes = 3030 then

  begin

    << that license can not be deactivated.>>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

CheckLicence, licenseVerification, NextVerification, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname


LicenceVerification
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command SetVal, Token: MVI

Name

LicenceVerification

Purpose

Property to get the state of the license regarding online verifications used in combination with CheckLicence

Params

None

Returncode

Returncode Type Integer | Note
0 = off | No online verification. CheckLicence will always succeed.
1 = ongoing | An online verification has to be done periodically
2 = frozen | A failed online verification has locked that license. A successful Checkllicense can bring it back.
3 = deactivated | Once on state “ongoing” the periodic checks are no longer necessary.

Usage

You can check the main parameter of the CheckLicence functionality

Sample

  iLicVerification := lic.licenseVerification;

  if iLicVerification = 0 then

  begin

    << online Verifications are not switched on >>

     ...

  end

See also

CheckLicence, DeactivateLicence, NextVerification


NextVerification
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with NextVerificationOfModule

Name

NextVerification

Purpose

Property to get and set the date when the next online Verification has to take place. This date is monitored with CheckLicence

Params

None

Returncode

Returncode Type Integer | Note
0 | There is no information about the next Verification. Probably there were no successful CheckLicence-Calls before.
A date | The next online verification has to be executed on that date at the latest.

Usage

Inform the user when the next online check has to be done.

Sample

  dtNextVerification := lic.NextVerification;

  if dtNextVerification > 0 then

  begin

    << tell your user that the next online Verification has to be executed on that date >>

     ...

  end

See also

CheckLicence, Deactivatelicense, licenseVerification


SetVerificationID
No contents entries on this page
Go to previous topic
Go to home topic
Go to next topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Command no longer in use

Replaced with command SetVal, Token: MVD

Name

SetVerificationID

Purpose

Sets the ID for the CheckLicence call. That is needed for the “Transfer” and “Adopt”-Button on the License Viewer

Params

Parameter | Type | Example | Note
ID | String | ID4711 | This value is used for the next “Transfer” or “Adopt” action

Returncode

Returncode Type Integer | Note
0 | The Verification ID was successfully set
All other values – see return codes | The operation was not successful

Usage

Sets the value that is necessary for the next implicit CheckLicence call triggered by the license Viewers “Transfer” and “Adopt” button

Notice: You should explicitly set the value in the CheckLicence and Deactivatelicense call, even if you have set it with SetVerificationID

Notice: A CheckLicence-call will do an implicit SetVerificationID

Sample

  iRes := lic.SetVerificationID(‘ID4711’);

  if iRes = 0 then

  begin

     << Verification ID successfully set. license Viewers Transfer now has the necessary parameter. >>

  ...

  end

See also

SetVerificationProduct, CheckLicence, Deactivatelicense, licenseVerification, NextVerification


WebRegister
No contents entries on this page
Go to previous topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • Expand/collapse expanding elements on page Show/Hide Expanders

Command no longer in use

Replaced with command WebRegisterExt

Command to make an online activation of a module.

Name

WebRegister

Purpose

Contacts the Activation Server 4 to activate a module.

Params

Parameter | Type | Example | Note
Projectname | String | demo-easygo | Projekt Name configured in the project.config file on the Activation Server 4. If empty the internal project name of the license file is used
ModuleID | String | QHD001 | ModuleID – identifies the module
ID | String | yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R | Identifier which is used to check and register this activation. Should be a unique ID like Serial Number, Invoice Number
eMail | String | john@mycompany.com | eMail address, currently only to be protocolled in the Web Activation server

Returncode

Returncode Type Integer | Note
0 | Module successfully activated
3001 | The Activation Server 4 was not reachable.
3002-3999 | Errors on the Activation Server 4, see Activation Server 4 error codes
Other return codes | Operation failed, see list of return codes

Usage

Used to activate one or more modules.

Sample

  iRes := lic.WebRegister(‘’, ‘QHD001’, ‘yuGEI-5EPc3-9E7Il-3tI8X-7QU5k-6h14R’, ‘john@mycompany.com’);

  if iRes = 0 then

  begin

    << Module D1001 successfully activated >>

     ...

  end

  else if iRes = 3001 then

  begin

    << Web Activation could not be reached, please check connection >>

     ...

  end

  else

  begin

    << other errors >>>

     ...

See also

GetWebActivation, Web Activation, WebServiceURL, ShowWAStartPage, ShowWAProgressPage, ShowWAResultPage, UseLocalProxy, UseLocalIEProxy, LocalProxyServer, LocalProxyPort, Projectname, WebRegisterExt

Ports and Proxy Settings

The Online Activation uses an http request on Port 80 to communicate with the Activation Server. A router with a standard firewall (IP-Filter) will not detect the difference to a Browser request and let the activation pass. A local personal firewall like McAfee or Norton will pop-up and ask, if the request should be permitted. Only a 'real' application firewall will block the request and an administrator has to open port 80.

Proxy settings are retrieved from the Browser but can be changed with the commands LocalProxPort, LocalProxyServer, UseLocalIIEProxy, UseLocalProxy.

Only the Licence Protector DLL can talk to the Activation Server.

The WebRegister command would display screens indicating that an online validation is done. The screens can be suppressed using ShowWAStartPage, ShowWAProgressPage and ShowWAResultPage


backward-compatibility
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Backward compatibility

Activation Keys

·The LicProtector410.DLL can read all Activation Keys from prior version. It can also create Activation Keys which will work in older versions.

License Files

The license file has not changed. Licence Generator 4.0 and DLL / COM exe 4.0 can open license files generated with version 4.1

Activation Server

·The Activation Server 4.2 can accept Transactions from prior DLL versions

·The Activation Server 4.2 supports all features from Licence Protector 4.1. It is mandatory to upgrade to Activation Server version 4.1 or newer if Licence Protector version 4 is used

If you use the Hosting Server, it will be automatically upgraded. .

Automatic License Generator

As the Automatic License Generator creates license files and Activation Keys. See restrictions above regarding format of the file and key.


change-project-update-as
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

After creating a new project or changing the project template, you have to select update the project on the Activation Server again (only necessary if the Activation Server 4 is used)


CheckInstCodeType
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Geben Sie hier den Text ein.


CheckLIcence
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The CheckLicence command triggers the activation workflow file on the server, e.g. activates copy protection and sends out the keys defined in this file.


Code Protection with All-In-One Protector
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Code Protection with All-In-One Protector

To protect the code against de-compilation or reverse engineering, you can combine Licence Protector with All-In-One Protector for a special bundle price.

See chapter: Code Protection / Decompile Protection


Enhanced Developer Documentation
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Enter topic text here.


enterprisesuite
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This feature is only available in the Enterprise Suite.


error 32
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This error occurs if you use a module type per PC, user or concurrent user and there is no free license available. See error screen sample.

It can also occur

·using a Terminal Server, Citrix or Remote PC session as each session counts a separate license per PC or license per concurrent user. See Network License.

·on a local PC installation with a license per user and multiple users on the PC start the application

·if a USB flash drive is used

If you use EasyGo, click on Show License information. You would see all PC's or users holding the license. It is possible to deactivate a license if it is no longer necessary.

See also: How to add Add additional users / licenses within a network


Error 3010
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Activation Key was already used or is locked.

Increase the number, how often the key can be used (maximum Key / ID usage) or unlock the key


Error 3013
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This error indicates, that the Automatic License Generator, which is used to create Activation Keys as a response to the Transaction, can not create Activation Keys. Most often a project definition is missing or wrong on the Activation Server 4.

If you use a date, make sure that the date format matches the settings of the server operating system - e.g. if you have an US operating system, the date format in the XML file must match this format (e.g. 01/30/2008 - wrong format would be 30.01.2008).

Also, if the ProductID and ModuleID in the config file do not match with the ID you use in the command for the product activation, this could generate the error.

If this error occurs in combination with error 9 (see log file), then check necessary rights for ASP Service. Especially make sure that all subfolders and files have the necessary rights.

If the error occurs in combination with the message: The project-configuration file xy.xml could not be loaded then the necessary rights for ASP Service for the files in the sub folder \alg are missing. Especially make sure that all files with the extension .XML have the rights. The rights settings could have been changed if you have replaced the files.

To get the detail error, login into the Web Administration Interface, select menu Tools, Download Logfile. Search in the logfile for this error.

·Upload the correct project definition

·Select menu Tools, Restart Webservice


Error 3014
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Error 3014 tells you that a request (e.g. product activation request) or an answer between a Licence/All-In-One Protector client and the Web Activation Service (WAS) failed due to an invalid ticket. A ticket ensures that a request can not be faked by simply replaying it. That is because the ticket may have expired. As default a ticket stays valid for 24 hours.

If your user does not have the correct time set on his PC, the error 3014 may also occur. You can react as follows:

·tell the user to correct the local time setting on his client

·increase the validity of all tickets. You can do so by using the configuration tag <TicketValidMinutes> in the project.config file on the Activation Server. The default value is 1440 which is 24 hours

Notice: The greater the value in <TicketValidMinutes> is set, the weaker is your protection against replay attacks.

Notice: Make sure that your Activation Server has also set the correct time. We recommend using the network time protocol NTP to ensure that the time of the server is set correctly. Consult the OS's documentation how to turn this on.


error date
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you use a date, make sure that the date format matches the settings of the server operating system - e.g. if you have an US operating system, the date format in the XML file must match this format (e.g. 01/30/2008 - wrong format would be 30.01.2008).


Generators
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Licence Protector comes with 3 different key generators (depending on the Licence Protector editions).

License Generator

This is a standalone Windows application and can be used to create a single license file or key. It is perfect for developers, as you can specify and configure a lot of settings.

Use the License Generator

Browser based administration interface

The browser based administration interface comes with the Activation Server 4. If you use the Activation Server 4, the recommended way to create a key is the browser based administration interface of the Activation Server 4. This offers several advantages

·Multiple users can create keys from different locations

·It is simple - just click on the create button. Most of the settings are predefined

·You can store a key with a note or assign a reseller while you create the key

·You can create one key or a complete key list

Only create keys but not files can be created with the Web Administration Interface

Create keys using the Web Administration Interface

Automatic License Generator

This is a batch application, which allows to create a license file or a key in a batch process. It is mainly used for:

·Create a key list, e.g. 1000 keys for a CD production

·Integration in e-commerce systems so that after the order process automatically a key or file is generated

·Integration in a sales system that would allow administration to create keys using the software application they already are familiar with

Create keys and files using the Automatic License Generator


Install DLL
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Installation of the DLL

The folder ..\files for distribution contains all Licence Protector DLLs. There is an folder with a compressed version and uncompressed version. We recommend using the uncompressed version because it works with all compilers and operating systems.

Licence Protector offers different ways to register the DLL / COM exe:

·Using LPRegister410.exe - it registers the DLL / COM exe without needing administrator rights

·Do not register the DLL if you use a manifest file. Administrator rights are not needed. Manifest files are not supported for the COM exe

·Register the DLL / COM exe with the windows tool regsvr32.exe or the inbuilt option of an installer. This requires administrator rights

You should copy the licprotector410.dll to the \windows\system32 folder although it could also be installed in your program directory. As each DLL version of Licence Protector has an own ProgID, multiple different versions can be installed on the same machine.

Best Practice

·If your installer needs administrator rights, use the inbuilt option of the installer or regsvr32.exe. To use regsvr32.exe add a shell execute command in the installer which invokes regsvr32.exe
- Register the DLL: Execute "c:\windows\system32\regsvr32.exe" " ....\pathname\LicProtector410.dll" (note: this requires administrator rights)
- Register the COM exe: LicProtector410.exe /regserver (note: this does not require administrator rights)

·If your installer does not need administrator rights then use LPRegister410.exe

·If you do not have an installer and you only copy files to a folder, use a manifest file

·If you just want to register the DLL manually on one system, use LPRegister410.exe. Using regsvr32.exe would work as follows:

- right click on “Command Prompt” in Accessories and click “Run as Administrator”

- run regsvr32 "....\pathname\LicProtector410.dll” in the command window

If multiple users on one computer or services use the COM exe, then you have to register it using administration rights and the command: LicProtector410.exe /regserver /NOREDIRECT

Vista / Windows 7 / Windows 8 and MSI files
Some installers generate a message HRESULT -2147220472 or -2147023898. This is due to missing rights during installation. Use LPRegister410.exe to register the DLL and not the installer built in dll register function.


key-description
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

If you send out a key by mail, turn on the option: Description. This will create additional text for each key to ensure, that the user types in the correct letter.

RCGEH-5EPc3-9E7IL-3tI8X-WQU5k-6v141

In block 3 at position 4 there is the capital letter I

In block 4 at position 3 there is the capital letter I


keyanalyze
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To use this command, the license file must have been opened with one of the prepare commands.

See Analyze an Activation Key for an overview about all commands.


license-agreement-basics
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

You may distribute and install only those files marked for distribution in the chapter Distribution of the developer documentation on any machines of your end users. You may distribute these files only with your software application. You must never distribute and install these files without your software.

·You are allowed to use as many project files/applications as are stated on the invoice or delivery note. If there are no project files stated, you can protect with the Starter Edition 3, and the Basic Edition 5 and with the Professional Edition an unlimited number of project files/applications. Unused projects can be removed.

·You can distribute the Licence Protector DLL with your application to any customer you like - without paying more fee

·The application License Generator may be used within a network by any number of users (site license)

·The application Activation Server may be used within a company by any number of users. It is a license for one instance. Especially it is not allowed to use the Activation Server on multiple instances and offer hosting services

·You need a new license for Licence Protector for each branch office where you develop software or generate licenses (site license)


login-was
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The user name is demo-en, the password is protector. To get a German user interface, use user name: demo-de and password: protector.


MinIdenticalInstcodes
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Geben Sie hier den Text ein.


open file
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

To use this command, the license file must have been opened with one of the prepare commands.


Print
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Print this tutorial

The Online Tutorial is also available as a PDF document.

You can print this tutorial - click on the link to download PDF file


professionaledition
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

This feature is only available in the Professional Edition.


remotepc
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

A Citrix or Terminal Server requires a special licensing. There is only one machine (hardware ID), but on this machine multiple sessions can be started. Licence Protector automatically detects, that the application runs on a Citrix or Terminal server and counts a license for each session (=PC).

Example

A home office user logs into the company network using a Citrix in the office. Licence Protector would retrieve the hostname of the home PC and would require a license for this PC.

This feature is supported for the license type per computer/seat and for concurrent user licensing. It also works in the same way for Remote Desktop. Other tools like gotomypc just transfer the screen content and mouse movements. Then no additional license is counted.


retrieve serial number
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

·Retrieve the Serial Number using GetSerial


sign-installer
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Sign your Installer file

Although you could deliver an unsigned installer file, we recommend adding your digital signature. You can buy a code-signing certificate from one of the accredited providers like www.verisign.com, www.thawte or www.comodo.com.

With the digital signed installer file your users do not get warning messages when they download the file or launch the application.

First check your installation tool if it supports to add a digital signature. As installers often add their own CRC checks a digital signature would destroy the installer file. Therefore the installer tool has to add the signature first before the CRC check is added.


Start Screen
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Enter topic text here.


Test a module
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

·Retrieve the module type - GetVal, Token LTY. Module type is also retrievable with GetModuleList (list of all modules within a license file)

·Retrieve module name - ModuleName. Module name is also also retrievable with GetModuleList

·Check if a module exists in a license file - ExistsModule

·Retrieve status Demo version of a module (ValidateEx)

·Retrieve time limitation of a module RemainingDays and/or ExpiredOn

·Retrieve the number of days which have been set for the trial period - NoOfDays

·Retrieve Activation Status of a module - GetWebActivation (2 = product / product activation for a module is done)

·Find out, if a module / license is deactivated using GetVerificationOfModule (result: frozen = 2)

·You can add modules (AddModule) to the license file or remove modules (DeleteModule) . This is necessary if you e.g. install an update of the application with new features

For modules which are from type user, PC, concurrent, Item counter you can

·Retrieve number of licenses and available licenses of a network module - TotalLicences and RemainingLicences. If the module is from type counter then you get the value of the counter with TotalLicences

·Retrieve all entries / user / computer - GetEntriesOfModule

·Deactivate an entry / user / computer - DeactivateEntry

·Activate an entry / user / computer again - ActivateEntry

·Delete all entries / users / computers - RemoveAllItems

·Delete all deactivated entries / user / computer - RemoveDeactivated

·Check if a specified entry / user / computer exists - ExistsEntry

·Check if an entry / user / computer is in use or deactivated - IsEntryActivated


UNC Pathname
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

Universal/Uniform Naming Convention. A UNC path describes the location of a volume, directory, or file.

The format for a UNC path is \\server\volume\directory\ and is not case-sensitive. For example:

\\Shared1_svr\Shared1\WGroups\Network\abc.lic

The UNC pathname is the absolute path of the licence file but it does not include the license file name.

Assume a situation where an application is installed several times on the same machine, but in different directories: The Volume ID or MAC address is identical on all installations and therefore the application may be used by too many users (3 installations with 20 licenses allow 60 users to work with your software, but you only sold 20 licences). With this installation code type including the UNC path the problem of several installations in different folders is eliminated.

However, there can be multiple license files on the same folder. Therefore it is recommended that the user cannot select the license file name in the application.

Licence Protector uses internally the UNC Name of the directory and not the mapped drive-name like f:\myapp.

You always have to use either the Share name or the UNC filename with the command Prepare, PrepareAdvanced, PrepareAndCheck, PrepareForce, PrepareSimple if you use an installation code in combination with the UNC path.


Video Tutorial
No contents entries on this page
This is the first topic
Go to home topic
This is the last topic

  • Scroll to top of this topic Scroll to Top of Page

  • Print the current topic Print Topic

  • Send feedback on this topic by email Email Feedback

  • No expanding elements on this page Show/Hide Expanders

The Video Tutorial offers a live demonstration of each activation method.

Start Video Tutorial