You are on page 1of 6

How to deliver a protected Library

This document explains step by step how to protect a TopSolid Library, generate a license and
deliver it to end-users.

1. Choose a License Provider name.

First you must choose a License Provider name for identifying the licenses you will generate for
protecting your libraries. This name must contain only alphabetic letters and decimal digits.
Spaces or any other special characters are prohibited. Your License Provider name must be
unique; you can ask Missler Services if the name is not already used.

Sample names:
- AB2000Company
- DummyGmbh
- 123BrothersLimited

2. Generate a pair of Private/Public keys.

For generating a license you need to have a pair of Private/Public Keys. The principle is that
you will use the Private Key for generating the licenses, and the Public Key will be used for
checking that the licenses have been generated by you.

The Private Key must remain private, only you must know it. If you give your Private Key to
someone else, he will be able to generate your licenses. So keep it in a safe place that nobody
knows. The Public Key is public, anyone can know it. You cannot generate a license with a
Public Key. It only allows someone to check if the license has really been generated with your
Private Key.

A tool exists for creating this pair of Private/Public keys. In the TopSolid bin folder (C:\Program
Files\Missler Software\TopSolid 7.x\bin), run TopSolid.Key.exe.

Enter your License Provider name (AB2000Company for example) and a license version (start
with a 1.0 version, the principle of the version is explained later in this document). Then click
Two files have been generated; the file names and location of these files are indicated at the
bottom of TopSolidKey tool (see screenshot).

You must backup these files in a safe location. You must not lose them, otherwise you
wont be able to generate licenses anymore for your end-users.

3. Protect the Library.

Start TopSolid with the shortcut -u LibraryDesigner.

Open the library you want to protect (AB2000Company Screws for example), then right-click
Properties on the library name:
In the properties view a section called Protection is displayed at the right side.

You must fill in this section with:

- The License Provider name: AB2000Company for example.

- The License Module Identifier: For your first library you can enter 1000 as module number.

The modules allow you to protect several libraries with different licenses. For example the
Screws Library can be protected by the module number 1000, and the Fastener Library can
be protected by the module number 1001. You will be able to generate a license only for
the Screws with module 1000, or only for the Fasteners with module 1001, or for both
libraries with a license for the 2 modules. You can also use the same module number for all
your libraries. It depends on how you want to sell the libraries: Sell them as a unique
package, or sell them as different packages. Note: A module must be an integer greater or
equal to 1000.

- The public key: Copy/Paste the content of the PublicKey.xml file generated by

- The project version: For your first library, you can enter a 1.0 version.

Why do we use a license version? When a large change has been made to a Library, you
can decide that the end-users have to pay for having these improvements. You dont want
the end-users working the old Library to be able to use the new one. In this case you can
change the Library version from 1.0 to 1.1, the end-users owning a 1.0 license wont be
able to use the new 1.1 library. They will have to ask you for a 1.1 license.

When all fields are filled, save the Library Properties.

4. Export the library for delivery to end-users.

Check-in your library.

Right-click Export Package, answer Yes to the following question:

Answer No to the following question. When you export the Library for the first time, you create
a full Package. Incremental packages are created later when you re deliver the library.

5. Generate an end-user license.

In the TopSolid bin folder (C:\Program Files\Missler Software\TopSolid 7.x\bin), run


At the top left you should be able to select your License Provider name (AB2000Company for
example). If not, ensure that your PrivateKey.xml file is located beside TopSolid.License.exe,
once its ok, restart TopSolid.License.exe :
Fill the following fields:

- Name: Enter the company name of your customer.

- E-mail: Enter the customer email.

- Machine Identifier: Copy/Paste the Machine Identifier of your customer. The customer can
find its identifier in the TopSolid License dialog.

- License module: Enter the library module, 1000 for example.

- Module description: Enter a description, Screws Library for example. This text will be
displayed in the TopSolid License dialog. If you dont specify a description, your customer
will see the module number as a description (1000 for example), its better to specify a
meaningful description.

- Output Directory: The folder where licenses are generated.

Click Create, the license is generated.

You can click Copy License File, and paste it in the email you will send to the customer.
6. Deliver the library and the license.

Send both the Library package and the license file to the customer.

The customer has to import the Library package. Then he has to open the TopSolid License
dialog, click Add License File and browse the license file.