The Configurator utility

Top  Previous  Next

configurator02

 

This utility is intended to generate the configuration code for the AVLock component into your application. Was thought to be used in conjunction with the new style of examples included from version 5.1.3.

 

Below you can see a screenshot of this utility, with three tabs on the left, each with their areas of definition and the generated code to the right with a different color for each of the related areas:

 

configurator03

 

The generated code can be cut and pasted into the initialization section of the avlockunit.pas file, on the examples or into your own application. You can also generate a file with extension  .inc or  .pas to be inserted with {$I } as used in the examples, see the code below:

 

initialization

 AVLock:=TAVLockS5.Create(nil);

with AVLock do begin

{$I conf.pas}

end;

 

This utility has three tabs, each with their areas

Now let us see each of these areas in more detail:

 

General > CONFIGURE AS

 

configurator04

Selecting one of these options are limited the options of the following areas according to a specific configuration. For example, if you select Remov to allow to your application to be registered on a removable device (pendrive, etc), the controls are set to generate the following code:

 

RegPath        := ExeDir;

RegFolder      := '';

InstallCodeSources := Removable_Disk;

 

Selecting Custom, all controls will be released with all options available.

Selecting SAN or NAS the controls are adapted to generate the code according to these settings. Of these two, SAN is the most common. For more information about this topic see Configuration.

 

 

General > REG PATH

 

configurator05

 

ExeDir is the default and refers to the folder where you will find the application executable file.

 

Selecting CommonDocuments then enter MyFolder into  REGFOLDER, we can see in REG FILE LOCATION the location where the .avr file will be created, containing the local registration data.  On the right you can see the code generated for this configuration:

 

configurator06

 

For ProgramData we got the following:

 

configurator07

 

For RoamingAppData we got the following:

 

configurator08

 

For LocalAppData we got the following:

 

configurator09

 

If we select Other, then we should enter REGFILEPATH and REGFOLDER, below you can see the resulting code:

 

configurator10

 

General > INSTALLCODE SOURCES

 

If we select Machine_Data, then we can select below the sources coming from the machine, below we select System_UUID and BaseBoard_SN. You can see right the resulting code.

 

configurator11

 

If we select User_Data, then we can select below the user data that we want to use to calculate the InstallCode. Below we selected User_Name and Email_Address.

 

configurator12

 

If we select Removable_Disk no other selections to make and only generates the code that you see below:

 

configurator13

 

General > PROPERTIES

 

Here we enter the properties for the component, see the image below:

 

configurator14

 

Advanced > ACTION DATE TURNED BACK

 

configurator15

 

Advanced > ACTION EXPIRED

 

configurator16

 

Advanced > EXPIRY DAYS TO WARN

 

configurator17

 

Advanced > EXPIRY DAYS TO WARN

 

Here we indicate whether the user must enter their personal data before starting the trial period or register.

 

configurator18

 

Advanced > OBFUSCATOR

 

This is an utility that allow to obfuscate any text of your application that you do not want to be exposed in the final executable code.

 

e.g. if we want to hide this text: 'Trial period already registered.', into the following piece of code:

 

if (keydata.status <> UnRegistered) then begin

   result := 'Trial period already registered.';

   exit;

 end;

 

We should copy and paste the text as shown below:

 

configurator19

 

Then we replace the original code with the obfuscated, as you can see below:

 

if (keydata.status <> UnRegistered) then begin

   result := hextoascii('547269616C20706572696F6420616C726561647920726567697374657265642E');

   exit;

 end;

 

 

 

I tried to make this help as clear and complete as possible, however they may have some issues not covered by this documentation. If you think I have missed something, or found errors, or have any idea that might be useful to improve this help, please let me know.

 


  Alcides Valega

Author of AVLock SIMPLE