Last Modified October 1, 2026

DNA_Validate() API

DNA_Validate(Product_Key)

DNA_ValidateCDM(Product_Key)

Parameters Description
<Product_Key>

The <Product_Key> of your DNA Product.

The <Product_Key> is emailed to you when you create a Product in the DNA Control Panel and is available under Product Configuration in the DNA Product Control Panel.

For list of Error Codes and descriptions, see DNA Error Codes    .

Will perform the following:

  • Validates with the local CDM License File on the User’s computer to ensure that the License is valid and the conditions are respected.

  • For Products configured with Validation Levels 2 and 3:

    • Performs a DNA Server Validation to validate against the License status and conditions on the DNA Server.

    • Creates an updated CDM License File on the User’s computer with the latest License configuration and information on the DNA Server.

    The DNA Server Validation will be performed a maximum of once per day.

 

Variants of the DNA_Validate API Call

DNA_Validate2
DNA_Validate3
DNA_Validate4
DNA_Validate5

Use as additional protection against hacking of your executable.
See Runtime Guards     for details.

DNA_ValidateCDM

DNA_ValidateCDM will only perform a validation with the local CDM License File on the User’s computer.
Use this variant when you do not want DNA_Validate to perform a DNA Server Validation.

DNA_ValidateCDM2
DNA_ValidateCDM3
DNAValidateCDM4
DNAValidateCDM5

Use as additional protection against hacking of your executable.
See Runtime Guards     for details.

 

Declarations and Examples

                      
                        
                        	FUNCTION   DNA_VALIDATE(PRODUCT_KEY:PANSICHAR):INTEGER; STDCALL;
						FUNCTION   DNA_VALIDATECDM(PRODUCT_KEY:PANSICHAR):INTEGER; STDCALL;
                      
                  
                      
                        
                        DECLARE FUNCTION DNA_VALIDATE LIB "DNA.DLL" (BYVAL PRODUCT_KEY AS STRING) AS INTEGER
						DECLARE FUNCTION DNA_VALIDATECDM LIB "DNA.DLL" (BYVAL PRODUCT_KEY AS STRING) AS INTEGER
                      
                  
                      
                        
                        INT __STDCALL DNA_VALIDATE(CHAR *PRODUCT_KEY);
						INT __STDCALL DNA_VALIDATECDM(CHAR *PRODUCT_KEY);
                      
                  
                      
                        
                        INT __STDCALL DNA_VALIDATE(CHAR *PRODUCT_KEY);
						INT __STDCALL DNA_VALIDATECDM(CHAR *PRODUCT_KEY);
                      
                  
                      
                        
                        INT __STDCALL DNA_VALIDATE(CHAR *PRODUCT_KEY);
						INT __STDCALL DNA_VALIDATECDM(CHAR *PRODUCT_KEY);
                      
                  
                      
                        
                        PUBLIC NATIVE INT DNAVALIDATE(STRING PRODUCT_KEY);
                        PUBLIC NATIVE INT DNAVALIDATECDM(STRING PRODUCT_KEY);
                      
                  
                      
                        
                        DECLARE FUNCTION DNA_VALIDATE LIB "DNA.DLL" (BYVAL PRODUCT_KEY AS STRING) AS SHORT
                        DECLARE FUNCTION DNA_VALIDATECDM LIB "DNA.DLL" (BYVAL PRODUCT_KEY AS STRING) AS SHORT
                      
                  
                      
                        
                        PUBLIC STATIC EXTERN INT DNA_VALIDATE(STRING PRODUCT_KEY);
                        PUBLIC STATIC EXTERN INT DNA_VALIDATECDM(STRING PRODUCT_KEY);