Validates a license on the server


Performs the following validations on the License Server:

  • Checks if the time on the client system is synchronized with the License Server.
  • Calls IsLicenseKeyRevokedEx to check if the license was revoked in which case the Activation Key and Computer Key are automatically deleted from the local system.
  • Calls IsIllegalComputer to check whether the ActivationKey and ComputerKey are registered in the database. If the computer is detected as an illegal computer, the Activation Key and Computer Key are automatically deleted from the local system.
  • If the server reports that the license has expired, the Computer Key stored on the local system is deleted.
  • Publishes Analytics to the server if PublishAnalytics is set to true.
  • Records the last time connection to the server was made in order to enforce the MaxDaysOffline setting.
  • Verifies whether the system has exceeded the MaxDaysOffline setting.
  • Returns whether the server has more up-to-date values for the SubscriptionExpiryDate, Features, and FloatingSeats.
ILicenseInfo ValidateLicenseOnServerEx3 (string webServiceUrl, string activationKey, 
                                         string computerKey, string computerID, 
                                         string computerName, bool autoReactivate, 
                                         out EServerErrorCode errorCode, 
                                         out string returnMsg, out bool result)


webServiceUrlstringURL to the QLM License Server
activationKeystringthe activation key
computerKeystringthe computer bound key
computerIDstringthe unique computer identifier
computerNamestringthe name of the computer. If you pass an empty string, QLM will automatically extract the computer name of the current system.
autoReactivateboolif true, this function will automatically try to reactivate the license if it's not registered on the server.
errorCodeEServerErrorCodereturned error code
returnMsgstringreturned error message


ILicenseInfodetails about the license including status information


LicenseValidator lv = new LicenseValidator (settingsFile);

bool result;
string serverMessage = string.Empty;
EServerErrorCode errorCode;

ILicenseInfo li = lv.QlmLicenseObject.ValidateLicenseOnServerEx3(string.Empty, activationKey, computerKey, computerID, Environment.MachineName, false, out errorCode, out serverMessage, out result);
if (result == true)
  bool reactivate =  (li.NewExpiryDate != DateTime.MinValue) || !String.IsNullOrEmpty(li.NewFeatures) || (li.NewFloatingSeats != -1);

  if (reactivate)
     // Reactivate the key 
  // Display returnMsg