Batch Mode

Batch Mode allows you to automate the process of Building Keys, Building Renew Codes, Showing Keys or Renewing Keys.  The KeyBuild, KeyShow and Renew system programs can be run from a Parent Program, Script or Windows Batch File where all normal Sounds, Displays and Prompts are suppressed.  All programs running in Batch Mode still allow the parent process to check for Success/Failure. In addition, all program activity can be recorded to a Log file for later review. Each Logged activity is stamped with the local Date and Time so you have a record of exactly what was done and when it was done.

For more information on running KeyBuild in Batch Mode, refer to this entry.

For more information on running KeyShow in Batch Mode, refer to this entry.

For more information on running Renew in Batch Mode, refer to this entry.


This is a SECRET unique character sequence for the Product being protected. It is used, along with the Product-ID, to determine the Product PIN and User-Data PIN. The Encryption-Key is NEVER stored in the Key and the Customer will never be required to know it. You can specify up to 8 bytes of Unicode characters for the Encryption-Key.


There are 16 single-bit Feature-Flags stored securely in the memory of every Key.  Each Flag can be On or Off. These Flags can be set by KeyBuild when the Key is built. Later, once the Key is in the Customer's possession, all 16 Feature-Flags can be read by your protected program using the KeyChk DLL.  Also, all 16 Flags can be individually or collectively turned On or Off with a single Renew Code.

When your protected program uses KeyChk to read the Feature-Flags, all 16 Flags are returned in a single 16-bit WORD field where Feature-Flag #1 is the Least-Significant bit of the WORD field and Feature-Flag #16 is the Most-Significant bit of the WORD field.

Feature-Flags can be used to help Market your Software by allowing you to Promote or Cross-Sell Products and Features in many different combinations. For an example of this, please refer to this entry.

Secure Communication Block or SCB

This is a 512-byte area of memory that is used to exchange Information between your program and the KeyChk DLL.

For a complete description of the layout and explanation of each field, please refer to this entry.

Uses Update

When using KeyChk Function 2 or 3, this the Uses Update refers to the Secure Communication Block (SCB) field that determines how many “Uses” will be subtracted from the current Uses Limit of the Key. The value must be Zero or a Negative number in a 16-bit WORD field.