There are different options you can use, depending how your application is structured.
A hard coded command line can be passed to the APP file.
The command line can also include encoding parameters (see below).
This feature should be used if the APP runs only with the option: Standard Protection level or if you want to add an additional layer of security.
Encoding Parameters
Select random 3 digit numbers. The numbers should be different per project
Path
Path and file name of the text file. Instead of hard coding a path use one of the following variables
%1% = user documents folder - e.g. /users/admin/documents
%2% = library folder - e.g. /users/admin/library/application support
The path could also be a relative path to the .APP file like /data/swp.txt.
The main application, which should be protected, can be invoked either by passing a command line parameter or an additional text file is provided. Both include encrypted values. The values change during each program start as they are calculated based on the system time. The main application has to validate the values and should only start, if the validation is correct.
Using the command line with the encrypted parameters is an alternative if reading a text file is not possible. If no path / file name is specified, the values are provided using the command line.
How it works
•The All-In-One Player application does the license and copy protection check •If everything is OK, It creates the text file (if configured) and launches the main application (start file) using a command line (if configured) •The values in the text file or command line are calculated every time when the application launches based on the system time and the defined encoding parameters •The main application reads the text file, deletes it and analyzes the values (formula see below) from the text file or from the command line •The main application only starts when the values are valid
Encrypted ValuesThe text file or the command line contains two encrypted values (time1 and time2). The values are separated with spaces.
Example: 1897 1996
The two values are calculated during the program start based on the values of two encoding parameters.and the system time. As each project has its own encoding parameters, the results can never be calculated without knowing the encoding parameters. Two values are required as the launch of the application can take time - e.g. the application is launched at 8:15 AM but it takes 30 seconds until the text file can be analyzed and the time is then 08:16. The value time1 is calculated based on the time when the text file is created and value time2 is one minute later.
You have to calculate the value for the validation using the following formula
Trunc((MMHH * Encoding Parameter1)/ Encoding Parameter2)
MM = Minute (must be double-digit) HH = Hour (must be double-digit)
Trunc = truncate position after decimal point
Compare the result with the value of time1 and time2 from the text file or command line . Either time1 or time2 must be identical with the calculated value.
Example The time is 8:16 AM
(1608 * 892) / 763 = 1879,86369...
Truncated value is 1879
Now compare the value your application calculated with both values provided by the text file or command line. One value has to match the value your application calculated.
If your application typically takes longer than one minute to launch, make a second calculation where you subtract one minute - e.g. time is 8:16 AM - calculate the values for 8:16 AM AND for 8:15 AM |
The license file is downloaded during the first application start from the Activation Server. You can select the folder where to store the license file.
•Application folder - stores the license file in the folder of the main application. This is only recommended if your application is stored on a USB flash drive or on an own folder like documents folder
•Inside the application - stores the license file inside the All-In-One Player application. This is perfect if you want to have all files in one location but updating the All-In-One Player would overwrite the license file and require a new product activation
•Library folder - this is the recommended folder for download versions. The file is stored on the user library folder\application support\your company name\product name
An additional layer for the main executable (Unix EXE) is added. Depending on the application, you would have to change the protection level
•High Protection level - this is the default option. Only change it if your application does not work properly. The app file is protected against decompiling.
•Medium Protection level - select this option if your application does not run with High Protection level enabled. The app file is protected against decompiling.
•Standard Protection level - select this option if your application does not run with Medium Protection level enabled. If possible, change your source code and use the Encoding Parameters (see below)
If checked, the main APP file is wrapped into the All-In-One Player (recommended)
If unchecked, the main app file would be on the same folder like the All-In-One Player but still protected depending on the selected protection level. However all additional files inside the app file would be visible.
If your APP application needs additional data outside the APP file, then you probably have to uncheck the option as otherwise path information would be wrong if the main app would be wrapped inside the All-In-One Player.
Example
E-Learning Made Easy.app (All-In-One Player)
My Main.app (your application)
/Data/images
If possible, store all data inside your app and check this option.