I am ready to protect a program that I want to release as a public beta. I wanted to be sure that protection was being applied correctly so I tried a test (which didn't work) and then I tried some more (which are also not working).
I initially used the 'Limitation by expiration date' and made the expiration the following day. When I tried it the following day and the day after, the program executed as normal every time (IE the expiration didn't work).
I then tried 'limitation by execution count' and that didn't work either. I tried replacing the original executable and I tried creating a new one (with a different name). Neither version stopped the execution after the execution count was exceeded.
After a number of attempts, the result went to the other extreme. Now, even if I save the output to a different name (with some sort of trial parameter) it does not execute my program but immediately goes to the Registration Dialog.
I also tried using a different project name but it still immediately displays the Registration Dialog.
The other parameters that are set are very simple. I didn't turn on hardware lock or anything like that.
Perhaps this is related to doing everything on a single machine. If that is the case, what is the appropriate strategy for testing the various Enigma parameters and, if necessary, resetting things before doing each test?
I did some additional testing with another module and when I changed the version number (with 'Reset trial in new version' turned on) I was able to run the module again to the limit of the trial parameter. I tried the same thing with the one that is giving me problems and it does not start the trial again.
This "problem" happens because your module is registered. Trial stops counting when there is a valid license in the system. If there is valid key, all trial limitations are gone.
So you need to open your project in Enigma Protector and click main menu - Tools - Debug - Reset all local info. This removes the key and trial info from your testing PC.
Also, you can control the licensing status (to avoid such confusions) by calling EP_RegLoadAndCheckKey function.