Skip to content

Latest commit

 

History

History
91 lines (72 loc) · 2.5 KB

validatelicenseex.md

File metadata and controls

91 lines (72 loc) · 2.5 KB

ValidateLicenseEx

Description

Validates a computer-bound license key.

string ValidateLicenseEx (string computeKey, string ComputerID)

Arguments

Name Data Type Description
computerKey string computer-bound license key
computerID string computer identifier

Return

Data Type Description
string A message indicating the result of the validation. Do not parse this message. Use GetStatus to get the exact status of the validation.

Remarks

Prior to calling this function, you must:

You can call this function for any type of license key. If the license key is not computer-bound, set the ComputerID to an empty string.

After calling this function, call GetStatus to get the status of the call.

Example

{% code overflow="wrap" %}

string returnMsg = license.ValidateLicenseEx(licenseKey, computerID);
bool ret = false;
bool needsActivation = true;

int nStatus = (int)license.GetStatus();

if (IsTrue(nStatus, (int)ELicenseStatus.EKeyInvalid) ||
    IsTrue(nStatus, (int)ELicenseStatus.EKeyProductInvalid) ||
    IsTrue(nStatus, (int)ELicenseStatus.EKeyMachineInvalid) ||
    IsTrue(nStatus, (int)ELicenseStatus.EKeyExceededAllowedInstances) ||
    IsTrue(nStatus, (int)ELicenseStatus.EKeyTampered))
{
    // the key is invalid
    ret = false;
}
else if (IsTrue(nStatus, (int)ELicenseStatus.EKeyVersionInvalid))
{
    // wrongProductVersion
    ret = false;
}
else if (IsTrue(nStatus, (int)ELicenseStatus.EKeyDemo))
{
    // The key has an expiry date

    if (IsTrue(nStatus, (int)ELicenseStatus.EKeyExpired))
    {
        // the key has expired
        ret = false;        
    }
    else
    {
        // the key is still valid
        ret = true;
        // call license.DaysLeft to get the remaining days
    }
}
else if (IsTrue(nStatus, (int)ELicenseStatus.EKeyPermanent))
{
    // the key is valid and permanent
    ret = true;
}

if (ret == true)
{

    if (license.IsActivationLicense (license.LicenseType))
    {
        needsActivation = true;
        ret = false;
    }                
}

{% endcode %}