Page 1 of 1
SOLVED::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 2:07 pm
by bitman2112
Hi,
I would like to be able to send a paying customer an activation code that points to a "forever" serial number after thier trial has run out or even while their trial version is still running.
So I went about to code up such a scenario.
I have an activation code that does indeed "point to" a "forever serial" and I am able to get a serial number from the weblm server based on that activation code. but when I do a VMProtectSetSerialNumber() on the received serial number is returns 8 or
trial expired.
So I tried a VMProtectDeactivateLicense() on my old serial first, but that did not change my results.
Is it possible to "hot convert" a trial version to a forever version?
Thanks,
:Ron
Re: Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 2:18 pm
by Admin
May be you need to send the customer other activation code that has no expiry date?
Re: Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 2:27 pm
by bitman2112
Admin wrote:May be you need to send the customer other activation code that has no expiry date?
Thanks,
I just looked at the "for ever" Activation Code and the expire date field is blank.
:Ron
Re: Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 5:29 pm
by bitman2112
Any other ideas? Or does VMProtect not support this?
Re: Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 5:53 pm
by Admin
WebLM can create any licenses (with or without expiry date). I don't understand what is the problem.
Re: Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 6:01 pm
by bitman2112
Admin wrote:WebLM can create any licenses (with or without expiry date). I don't understand what is the problem.
Me either.

Re: Edited a typo ::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 6:14 pm
by bitman2112
There is an elephant in the room however.
When a trial license expires on a particular computer, it is determined to have expired without the help of and internet source as expected. Also setting the clock forward or backward does not "crack" the trial expiration nor does deleting the serial.
It is reasonable that VMPsoft does not come out and say where the time determination is hidden but it is very likely that an expired machine is an expired machine. I don't see why even uninstalling the trial and installing a new version would even circumvent this, as the time checking is not in my code.
I came here because EXETOOLS says you all are the best and it seems that way. I was using ActiveLock but could not hide the boolean go-no go serial check. VMProtect's lock code to serial solves this nicely, but if we can't unlock the customer's trial than... well, crap. hu?
:Ron
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 6:32 pm
by Admin
Guy, you are VERY inconsiderate!
I already asked your question:
May be you need to send the customer other activation code that has no expiry date?
Don't you know how create such activation code/license or what is the problem?
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 6:48 pm
by bitman2112
Admin wrote:Guy, you are VERY inconsiderate!
I already asked your question:
May be you need to send the customer other activation code that has no expiry date?
Don't you know how create such activation code/license or what is the problem?
I am not, in response to this I said:
Thanks,
I just looked at the "for ever" Activation Code and the expire date field is blank.
:Ron
The thread just died there.
I just need help. This is a BIG DEAL.
It's scary to think this is the level of support after I pony up $500.00 USD for VMP and WebLM.
Support proper has never responded to any issues and Admin whoever you be, are as terse and dismissive as can be.
I understand that as we can be a bunch of Mor-Rons, and it must be exhausting.
But the issues remain the same.
What is inconsiderate about having an issue?
I want this to work.
This as I see it is that last hurdle.
You are aware that all the instructions on this web site do not address the unlock of a trial at all right?
It's as if it has been forgotten, yet how can that be? or there would be howls of discontent.
I cant be the only one who tried this obvious and common procedure.
This isn't a toy, this is serious business.
:Ron
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 7:14 pm
by Admin
I don't understand what is "unlock of a trial". VMprotect doesn't store anything on an user's computer. If you mean the new version release and want to start a new trial preiod for this version - you need to use a new activation code for this version.
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Fri Nov 22, 2013 8:44 pm
by bitman2112
Admin wrote:I don't understand what is "unlock of a trial". VMprotect doesn't store anything on an user's computer. If you mean the new version release and want to start a new trial preiod for this version - you need to use a new activation code for this version.
VMprotect doesn't store anything on an user's computer.
Then without giving any secrets away, how does it know when the time is up on a trail even after complete uninstall of the protected application and reinstall of it?
That is the problem. I will try to be as clear as possible again.
I have a DEMO Activation Code that goes out and gets a serial number from the trial WebLM server.
This setup will work for X days.
During the X days or after the trial is up, I chane the Activation code to a code that is unlimited, not even hardware locked, and called VMProtectActivateLicense(). I got a serial from the trial WebLM server and verified this on the trial WebLM server. The return from VMProtectActivateLicense() was 0 - or all ok, so I made a call to VMProtectSetSerialNumber() which returned 8 which is
Trial Expired.
That shouldn't be, right?
I really want to use VMProtect. It's been almost a month working with it and I am ever so close, testing this and checking that across all kinds of installs. And a linux server at the ready for WebLM too!
:Ron
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Sat Nov 23, 2013 6:02 am
by Admin
I will show how I see that you need:
1. We have one product "My product" and two modes for it:
1.1 Trial: (Hardware ID = "from Url"; Expire Date = "days from activation date = 30"; other fields are empty)
1.2 Full: (Hardware ID = "from Url"; other fields are empty)
2. We have the activation code for "My product - Trial" (value is "trial-code"; other fields are empty)
3. We have the activation code for "My product - Full" (value is "full-code"; other fields are empty)
4. We implemented a registration dialog in our application that contains two buttons:
4.1"Try now":
Code: Select all
bool try_now_clicked()
{
char serial[1024];
if (VMProtectActivateLicense("trial-code", serial, sizeof(serial)) == 0) {
int state = VMProtectSetSerialNumber(serial);
if (state == 0) {
store_serial_number_into_registry();
return true;
}
if (state & SERIAL_STATE_FLAG_DATE_EXPIRED) {
MessageBox("Your trial period is expired. Would you like to purchase our software?");
}
// display other state codes
} else {
MessageBox("Activation error");
}
return false;
}
4.2 "Register": (user enters an own activation code into dialog, for example "full-code")
Code: Select all
bool register_clicked(char *user_activation_code)
{
char serial[1024];
if (VMProtectActivateLicense(user_activation_code, serial, sizeof(serial)) == 0) {
int state = VMProtectSetSerialNumber(serial);
if (state == 0) {
store_serial_number_into_registry();
return true;
}
// display state codes
} else {
MessageBox("Activation error");
}
return false;
}
5.When our application starts:
5.1 It reads the current serial number from registry
5.2 It the serial number is empty or it's invalid (expired, etc.) we show the registration dialog p.4
That's all.
P.S. Is it difficult to implement? I don't think so.
Re: Edited a typo ::Unlocking an expired trial license?
Posted: Sat Nov 23, 2013 3:01 pm
by bitman2112
OK!
That did it.
I was unaware that we *HAVE* to use modes to pull this off.
I was just using two activation codes pointing to separate serials.
Using modes permitted the "full" activation code to obtain a serial from WebLM that was accepted by SetSerialNumber(). And I HOT unlocked an
expired trial overwriting the trial serial with the new one as desired and now we have it!
Yay.
Thank you all for (all?) of you who haved helped me with this.
I hope this thread is a help to others as well.
I really can't thank you enough it's been a tough few days. I even downloaded a trial of that (Already well warezed) WinLicense. I'm so happy I get to forge ahead with VMProtect.
