IsLicenseGenuine and LA_E_REVOKED


#1

At the start of my app I do a check for IsLicenseGenuine to see if the user has a license installed.

However, if the license has been revoked, IsLicenseGenuine doesn’t return LA_E_REVOKED but LA_FAIL instead. Due to that LA_FAIL, the result is that my code goes on to check if a trial has been started and picking up on that instead.

I know it doesn’t claim it could return LA_E_REVOKED, but since it can return LA_SUSPENDED as well, and since ActivateLicense can return LA_E_REVOKED, I thought this might be a nice addition? By adding LA_E_REVOKED to IsLicenseGenuine one can also check for installed revoked licenses at startup and deal accordingly.

Then again old code might not be prepared to have LA_E_REVOKED roll out of IsLicenseGenuine…


#2

Hi Carl,

When an license is revoked server side, it deletes the activation data client side, hence it returns LA_FAIL - meaning no activation.

The solution in your case would be to listen for LA_E_REVOKED status code in the license callback, and store that information in your app.


#3

Hi Adnan,

Thanks for the reply!

I don’t think I’ll add code for this then; for now it’s more hassle than it’s worth in my case. The only downside is that if I revoke a license while someone doesn’t have my app open, they’ll silently revert to trial mode on the next app launch; when they then feed in their license code again, I do pick up on the LA_E_REVOKED from ActivateLicense, and can then tell them about the revocation.

It’s just that during development I assumed license suspension and revocation could be handled identically in code, which proved to be otherwise when verifying all test scenarios now. Ah well :slight_smile: