Error Codes 400–419
Last updated on
400
The system could not allocate enough memory to proceed with this operation.
This error indicates that the computer is very low on system resources. Close other applications or restart the computer to free resources.
401
No Dinkey Pro/FD dongles detected.
If this error occurs in software that is locked to both local (Lite or Plus) and network dongles, error code 401 indicates that no local dongle was detected, and the extended error code contains the result of the failed network protection check.
402
Too many Dinkey Pro/FD dongles detected.
Some operations, such as programming a dongle with DinkeyAdd, require exactly one dongle to be connected.
403
Detected a dongle with an unexpected type (Pro or FD).
A Dinkey Pro dongle was detected when a Dinkey FD dongle was expected, or vice versa.
404
Detected a dongle with an unexpected model (Lite, Plus or Net).
This error can occur, for example, when software locked to Dinkey Pro Lite dongles detects a Dinkey Pro Plus dongle.
405
Non-demo software detected a demo dongle.
Demo dongles have SDSN 10101. See this article to learn how to find your SDSN.
406
Demo software detected a non-demo dongle.
Demo dongles have SDSN 10101. After your first order you should uninstall the demo SDK and re-protect your software using your personalised SDK. See this article for more information.
407
Detected a dongle with an unexpected SDSN.
The dongle is not yours! It belongs to another Dinkey Pro customer.
408
Detected a dongle with an unexpected dongle serial number.
If the error occurs in DinkeyAdd: check that the serial number of the dongle being programmed is in the range specified under Advanced Options on the General tab. You can quickly check the dongle serial number using DinkeyLook.
If the error occurs in your protected software: check that the serial number of the dongle matches the range specified when protection was added. If you are using the MATCH_DONGLE_NUMBER API flag, check that the value of the DRIS dongle_number field is correct. To check an end-user's dongle serial number, ask the user to use Tools > Generate Diagnostics in DinkeyChange, and send you the diagnostics file. You can open this file using DinkeyLook to view information stored in the user's dongle.
409
Detected a dongle that has not been programmed.
Plus and Net dongles must be programmed with DinkeyAdd before they can be used.
410
Detected a dongle with an unexpected product code.
For Lite dongles the product code is specified when you order and pre-programmed into the dongle. The product code entered in DinkeyAdd when adding protection must match this value.
For Plus and Net dongles the product code specified when you lock your software must match the product code specified when you program the dongle. The easiest way to ensure this is to use the Lock software and program dongle option on the Add Protection tab of DinkeyAdd.
411
The dongle detected does not contain the specified licence.
If the error occurs in your protected software: check that the licence name specified on the Programs tab of DinkeyAdd when you locked your software matches one of the licences listed on the Licences tab when you programmed the dongle. You can use DinkeyLook to view licences stored in a dongle.
If the error occurs in DinkeyChange: the remote update code is attempting to modify or remove a licence that does not exist in the dongle. Use DinkeyRemote to create a new, valid update code.
412
The structure passed to DDProtCheck() is not a valid DRIS.
A valid DRIS starts with a "DRIS" header. Refer to the sample code in the SDK to see examples of the correct way to initialise the structure and call DDProtCheck() in your programming language.
413
The API library has not been locked.
The protection API libraries must be 'locked'—modified by your personal copy of DinkeyAdd—before use. Use DinkeyAdd to add protection with either Lock software only or Lock software and program dongle selected. If you are calling a dynamic library then you should specify that library file as the file to lock in DinkeyAdd, not the executable that calls it.
If you have already locked the dynamic library and you are still getting this error, check that your protected software is loading the library file that you expect, and not loading an unlocked copy from another location.
414
The DRIS passed to DDProtCheck() is too small.
You must set the size field of the DRIS to the size of the structure in bytes. Refer to the sample code in the SDK to see examples of the correct way to initialise the structure and call DDProtCheck() in your programming language.
415
The DRIS passed to DDProtCheck() is too large.
You must set the size field of the DRIS to the size of the structure in bytes. Refer to the sample code in the SDK to see examples of the correct way to initialise the structure and call DDProtCheck() in your programming language.
This error may indicate that you are using a version of the DRIS newer than the version of the library you are calling. Check that you are using the latest version of the SDK and make sure that you are using code and libraries taken from the same SDK.
416
Operating system not supported.
See System Requirements in the SDK user manual for full details of the operating systems supported by Dinkey Pro.
417
Bad parameter in the DRIS:
- An invalid value for the
functionorflagsfields. - If reading/writing data, too large a value for the
offsetorlengthfields, or a null pointer passed for the data. - If encrypting data, an invalid value for the
data_crypt_key_numfield. - If executing an algorithm, an invalid value for
alg_number.
This error can occur if you are encrypting the DRIS in your code but did not specify DRIS encryption in DinkeyAdd when locking the library (or vice versa).
418
The DRIS contains contradictory flags values.
For example, it is invalid to set both DEC_ONE_EXEC and DEC_MANY_EXECS.
419
System clock tampering detected.
Set the system date and time to the correct values, including daylight saving time and time zone settings. If a user continues to get this error after setting their system clock correctly, use DinkeyRemote to create a secure update code that sets the last date used value in their dongle to today's date.