Usage
Protojo is a Windows console application that can be executed from any location on your computer.
Usage
To use Protojo, run the following command in the command prompt:
protojo.exe -key <your license key> -exe <compiled Xojo 64-bit application> -o <output Xojo 64-bit application>
For example:
protojo.exe -key FREE -exe "C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProject.exe" -o "C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProjectP.exe"
The above will analyze and prepare for protection the specified file:
C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProject.exe
The resulting unprotected file will be saved as:
C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProjectP.exe
You can use the resulting file (XojoProjectP.exe) with the corresponding software protector. All Protection Markers and Protection APIs will be processed by the software protector, providing you with a properly protected file ready for shipping.
Using Protojo requires a working Internet connection.
Command line arguments
Argument | Description |
---|---|
-key | Your registration key or FREE for free of charge promo usage. |
-exe | The full path to your compiled Xojo application. |
-o | The full path of the Protojo processed output Xojo application. This file is not intended for execution or shipping; it is meant to be protected by the software protector. |
If you attempt to run the resulting Protojo output file, you may receive a “DLL not found” error message. This is expected behavior. Software applications prepared for protection require the corresponding DLL:
This is not an error. Software applications prepared for protection require the corresponding DLL:
- VMProtectSDK64.dll for VMProtect
- enigma_ide64.dll for Enigma Protector
The Protojo processed unprotected file is not meant to be executed directly, and the DLL file is only needed by the software protector.
If you protect this file with the software protector, the resulting protected file will NOT require any extra DLL files.
However, if you want to execute the unprotected file for testing purposes, copy VMProtectSDK64.dll or enigma_ide64.dll to the same directory as the Protojo output EXE file.
Automating Protojo Execution on Xojo Project Build:
Select Windows in the build settings:
Select Build step -> Script from the Insert menu:
Rename the script name to something meaningful, for example Protojo
:
Enter the following script:
Call DoShellCommand("C:\Tools\protojo.exe -key FREE -exe ""C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProject.exe"" -o ""C:\XojoProject\Builds - XojoProject\Windows 64 bit\XojoProject\XojoProjectP.exe""")
The result could look like the following:
Finally, change the script behavior Applies To to Release:
This ensures that Protojo will process the file only when you build your Xojo project to the Release target and won’t affect your Debug builds.
Similarly, you can automate the execution of the software protector on the build of your Xojo project by adding the corresponding command line in the same or a new build script after the Protojo call.
Refer to the software protector manual for details on how to call the protector from the command line.