Monday, May 16, 2011

Dongles

I hate dongles.

They're a real pain in the ass.  Expensive to replace if lost or broken.  Most require a PC dedicated to their function.

Despite my efforts to eliminate dongles altogether, I still have 3 left to worry about, and they're critical at that.  One is used to licence our Attendance Enterprise payroll software by Infotronics, another licenses our Avaya IP Office 403 telephone system, and the last licenses Performance Series by Diagraph which prints all of our stock labels.  Over the years, I've had to move these dongles from one PC to another as hard drives and mainboards died, Windows needed reinstallation, users change positions, etc.

We recently migrated from full Windows desktops to a terminal server, which left nowhere to host the dongles.  Sure, I could setup a PC just for that, and eventually that's exactly what I did.  I found the Fit-PC at www.fit-pc.com, a small and inexpensive x86 compatible PC that fits (pun intended) nicely anywhere in the rack I choose to put it and uses very little power.

I spent several hours trying to install the Attendance Enterprise Security Manager, a system service which validates the license according to the dongle and plants a record in the database of the AE application.  I learned a long time ago that even though the service itself is merely a single executable with its own configuration registry key, it requires the installation of the full application in order to work properly, or it will throw bogus errors that suggest the dongle is not present.

The problem this time was the installer, which eventually demands the presence of the dongle to proceed and merely disables the Next buttons until it is found.  Despite using the Sentinal Advanced Medic to validate that the dongle was working, the installer would not find it.  Procmon yielded no clues.  Monitoring USB activity was worthless.  I tried setting up a VMware virtual machine to duplicate the issue, and did exactly that.

Finally after several hours and starting over several times, I decided while installing the Sentinel Protection drivers to install the parallel port drivers in addition to the USB drivers.  See, normally I wouldn't think to install the parallel port drivers on a machine with no parallel port (like a Fit-PC), moreover I would expect that to fail.  It does not fail, and in fact the installer suddenly and magically finds the USB dongle once the PARALLEL drivers are present.  Nice one, guys.

But, once installed, it fails to start.  The AESECURITY.EXE pops a BEX error and must be added to the Data Execution Protection exclusion list to work.  Way to go.

And finally, even though the installer pretends to support Windows authentication to the remote SQL Server, it fails to include Integrated Security=SSPI in the connection string.  Fortunately this is easy to fix in the registry.

Congrats, Infotronics.  You've just topped my list of stupid software.  Your developers should be embarassed.

Time, effort, and actual expense (in the form of a PC that does nothing except host the dongles, for example) aside, the biggest problem I have with dongles is that they fundamentally transfer the cost of anti-piracy from the manufacturer onto the customer, and not just once but on an ongoing basis.

Instead of an Internet based activation and licensing service (paid for in some fashion by the software manufacturer), of which there are many that work well, the customer is forced to pay for the dongle as part of the software package, and maintain its operation and relocation over time across desktop migrations, upgrades, and hardware maintenance.  Even if the software manufacturer goes out of business and disappears, the customer continues to bear the cost of the dongle even though the license is no longer valid and no company is left to care about potential piracy.  And good luck if the dongle breaks then.

I will never again buy a piece of hardware or software that requires a dongle.  Any company that would force me to isn't a company with which I want to do business.

1 comment:

  1. Dear Brandon, I agreee, I hate dongles too. But this is not why I'm sending the comment to you. I read that your are using or used the Labelling software Performance Series by Diagraph too. We're currently in a planning phase to switch to a new software, but we have to keep the old one for one additional year. Our problem is, that we're currently have only one running dongle and if this dongle dies, we're really in trouble. My question is, if you still need your dongles or if you know where I can get ones. It would be great if you can help me. Best Torsten

    ReplyDelete