Last Modified October 2, 2026

TurnKey Activation - Use Multiple PREFIX

 

You would use the Prefix feature of software_DNA if you would like to support from the same software code, the following:

  • multiple "versions" of functionality (ex: "Standard" version and "Pro" version)

  • multiple protection "configurations"

  • a version for your Offline customers (i.e. using Offline Activation)

See Using the PREFIX Option     for more information.

In cases where you have defined multiple DNA Products with distinct <Product_Key>’s and with distinc PREFIX’s and you want to use one executable with the "TurnKey Activation" approach, it is possible to pass a <Product_Key_List> for the <Product_Key> parameter in the DNA_ProtectionOK() API call.

The <product_key_list> is a list of "<key_spec>" information separated by the "|" (pipe) character:

<product_key_list> = <key1_spec>|<key2_spec>|<key3_spec>

Where:

  • <key_spec> = <product_key1>;<multiuser_flag>;<prefix1>

    (note the ";" (semicolon) as the delimiter between the three(3) fields)

  • <product_key> = the software_DNA Product Key for the specific version

  • <multiuser_flag> = "0" (char). This is a future feature. Must be set to "0" at this time.

  • <prefix> = the 1 to 4 char PREFIX as defined in the Product Configuration for this product

The DNA_ProtectionOK() API call will capture an Activation or Evaluation License Code from the user or from the CDM License file and try to match one of the <prefix> and use the corresponding <product_key> for the rest of the process. If no match is found, then the first <product_key> in the <product_key_list> will be used.

If you use the "Request Eval Code" or the "Evaluate Now" options of the DNA_ProtectionOK API, then it will use the first <product_key> in the <product_key_list> to request an Evaluation License Code from the Server.

In other words, make sure the first <product_key> is the product which supports Evaluation Codes (this could be your "STD" version or your "PRO" version for example).