Activating Modular Applications Through a Multiple-License Order

Important

This method of activation is not recommended if you are using Protection PLUS 5 SDK. With the Protection PLUS 5 SDK XML license file, you have the flexibility to pass down as much data as necessary in the Custom Data field, and only a single license and activation will be required.

This topic describes a method to send modular license information to a software application online through SOLO Server. Let's take a product where you wanted to sell multiple dimensions of options:

For example:

[ ] Product A Standard Edition
[ ] 100 uses
[ ] 500 uses
[ ] 1000 uses
[ ] Module 1
[ ] Module 2
[ ] Module 3
[ ] Module 4

[ ] Product A Professional Edition, 1000 uses
[ ] Module 1
[ ] Module 2
[ ] Module 3
[ ] Module 4

There are multiple ways you could configure the product options defined in SOLO Server. Here is a sample:

How does this differ from a normal License ID / Password activation?

Once the product and options are entered in SOLO Server, here are the steps to complete:

  1. The above product selection could be displayed on an ASP page in various ways (radio buttons, check-boxes, etc.). You could enforce business rules in this ASP page to make sure that the right combinations are chosen before passing the list to SOLO Server's cart.
  2. The cart can sell multiple items to the customer at one time. You can add multiple items to the cart with a single call by separating the Product Option IDs by a comma. If you use check-boxes and name your form fields the same, the browser should automatically separate the Product Option IDs by commas.
  3. Change the Product Option records to remove the Issue License property. Having a bunch of License IDs on the transaction receipts will most likely be confusing to the customer.
  4. Change the Order Confirm HTML to instruct the customer to use the Invoice Number and Password to activate.
  5. In your application, declare an empty buffer of 8000 characters. In VB:
    Dim buffer As String
    buffer = Space(8000)
  6. Have your application call SK_GetTCData with the URL of secure.softwarekey.com/solo/unlock/getinvoicelicenseidlist.asp and specify the Invoice Number (instead of License ID) as the License ID parameter. Also send the Password of the Invoice Number. Pass your buffer to the License Update parameter.
  7. Up to 700 License IDs will come back in the buffer parameter, separated by pipe (|) characters.
  8. Have the application parse through this list and call SK_GetTCData() with the normal URL of secure.softwarekey.com/solo/unlock/getcode.asp for each of the License IDs and process as normal.