SOLVED::Unlocking an expired trial license?
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
SOLVED::Unlocking an expired trial license?
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
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
Last edited by bitman2112 on Sat Nov 23, 2013 7:53 pm, edited 2 times in total.
Re: Unlocking an expired trial license?
May be you need to send the customer other activation code that has no expiry date?
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Unlocking an expired trial license?
Thanks,Admin wrote:May be you need to send the customer other activation code that has no expiry date?
I just looked at the "for ever" Activation Code and the expire date field is blank.
:Ron
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Unlocking an expired trial license?
Any other ideas? Or does VMProtect not support this?
Re: Unlocking an expired trial license?
WebLM can create any licenses (with or without expiry date). I don't understand what is the problem.
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Unlocking an expired trial license?
Me either.Admin wrote:WebLM can create any licenses (with or without expiry date). I don't understand what is the problem.

-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Edited a typo ::Unlocking an expired trial license?
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
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
Last edited by bitman2112 on Sat Nov 23, 2013 8:34 pm, edited 1 time in total.
Re: Edited a typo ::Unlocking an expired trial license?
Guy, you are VERY inconsiderate!
I already asked your question:
I already asked your question:
Don't you know how create such activation code/license or what is the problem?May be you need to send the customer other activation code that has no expiry date?
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Edited a typo ::Unlocking an expired trial license?
I am not, in response to this I said:Admin wrote:Guy, you are VERY inconsiderate!
I already asked your question:Don't you know how create such activation code/license or what is the problem?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
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?
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.
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Edited a typo ::Unlocking an expired trial license?
VMprotect doesn't store anything on an user's computer.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.
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?
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":
4.2 "Register": (user enters an own activation code into dialog, for example "full-code")
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.
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;
}
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.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.
-
- Posts: 75
- Joined: Wed Oct 30, 2013 5:24 pm
Re: Edited a typo ::Unlocking an expired trial license?
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.

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.


