Quantcast
Channel: Delphi – The Wiert Corner – irregular stream of stuff
Viewing all articles
Browse latest Browse all 1440

When your license check is faulty and causes customers to loose work you a cardinal sin

$
0
0

I wrote about this before, named it a cardinal sin too, but I seem to have to repeat this:

When your product thinks the license is validate and quits without allowing the customer to save its work, then you’ve committed a cardinal sin.

Yes, I can talk about cardinal sins: I’ve been named after the artist Hieronymus Bosch (:

For me it is OK if a product checks for binaries that do not to the product (and not signed by the vendor) in the product directories and fails to start, or to present a nag screen that takes a while to disappear, or even to limit functionality.

But:

  1. The product should always tell why the license check failed.
  2. The product never can force the customer to loose work.
  3. The documentation should show failure situations (not just the OK counterparts).

Given some recent posts and the fact that over the course of 10 different versions I lost days of work and at conferences I usually get multiple questions from people having suffered from this, I really had to bring this up again.

The first link below contains a lot of useful information on how to run Delphi in a way that license issues have a smaller chance, but still they occur. A few of the tips there (read the thread for the details) combined with some of mine:

  • run only inside a VM
  • use snapshots
  • never change MAC address of network adapters
  • configure enough network adapters up front before licensing
  • never change the username under which you run Delphi
  • never change the machine name of the machine that runs Delphi
  • never change the domain under which the machine running Delphi is configured
  • save your work very often (Ctrl-Shift-S is your friend)
  • be careful when you see exceptions in the IDE: when they occur (especially with access violations and range check or list index issues), restart the IDE as soon as possible
  • be careful with 3rd party IDE extensions: the Open Tools API isn’t that stable or know enough to use error-free with 3rd party vendors
  • within VMware, use manually assigned MAC addresses of the form 00:50:56:XX:YY:ZZ where XX is not larger than 3F (see VMware vSphere 4 – ESX and vCenter Server: MAC addresses; VMware will use 00:50:56:40:YY:ZZ -00:50:56:FF:YY:ZZ for auto-generated addresses; all within the OUI 00:50:56 are for VMware based VMs)
  • only use Intel processors for your VMs
  • do not change the VMware hardware level for a VM
  • disable the first network card (it’s tied to your Windows license)
  • use virtual CD drives (not the VMware bound ones) to keep hardware changes to a minimum
  • never put stuff in the bin folders of Delphi
  • be careful with your Virus Scanner vendor (report false positives to them)
  • consider skipping the Delphi bin directories in your Virus Scanner
  • consider some way autosave your files (for instance autosave before compilation)
  • consider disabling authenticode checking when running older Delphi versions (likely 2010 … around XE3).
    • The problem is a certificate revocation list from usertrust.com.
      The product validation routine needs this CRL to check the EMB certificates in the bin dir, but does not evaluate the error codes of the crypto api calls used in the right manner.
      If the CRL is out of date and a valid CRL can not be downloaded, the crypto api returns an error and the validation routines fail.

Then still, all versions from Delphi 2010 (maybe even 2009) and up I’ve used show this problem every now and then.

Read the interview Interview: Gabe Newell about Valve, Steam and Licensing. Very small excerpt: “Piracy is almost always a service problem and not a pricing problem… Most DRM solutions diminish the value of the product by either directly restricting a customers use or by creating uncertainty.”

–jeroen

via:


Filed under: Delphi, Development, Licensing, Software Development

Viewing all articles
Browse latest Browse all 1440

Trending Articles