Monday, November 10, 2008

DeployLX - Software Protection System

Dot .Net Dilemmas

The company that I work for are looking into completely overhauling our Licensing and Software protection system for all our software products. We currently have 4-5 products that are sold over the web and installed on the clients' machine and each needs to be protected.

Our current 'in-house' system ties the license to a machine profile and this makes it difficult to manage the licenses. In the future, we need our license system to be a lot more flexible allowing for; extensions on trial versions of our software, subscriptions for both our single and floating licenses and ease of license transfer.

I was given the task of investigating the various licensing system out there and come back with a recommendation. The basic brief was;

Single License:
  • Tied to a machine profile.
  • Must be easily deactivated from one machine and transferred to another.
Floating License:
  • A company should be able to install our software on each PC/Laptops required, without having to go through a complicated registering/activation process. The Activation of the software licences should only happen on the server which controls the licences and use of software. 
  • The monitoring software should ensure that it can only be installed on one server even if that server is part of a server farm.
Trial License
  • The software can be evaluated for a predetermined amount of time. 
  • An extension may be give on the trial of the software by the use of an extension code
Subscription License
  • On both the Single and Floating licenses.

In the end, after looking at 8-10 products, I put my money (well, my company's money) on DeployLX and Codeveil from Xheo. It seemed to offer everything that we needed and compared to a lot of companies, it was pretty well priced.

Even though the support from Xheo was excellent (Gary would respond to my emails in a matter of hours and this while I was still only trialling the software). I found that the level of documentation, particularly with regards to 'How-To' style documentation to be lacking. 

There is little-or-no help of any kind on the web so I've decided to document, over the next few weeks, how to achieve the results that I need to achieve and hopefully they will be of help to others. 

Hopefully, it will also be a way of me getting out of doing too much internal documentation as I will just be able to point future employees who have to work with DeployLX to my blog.

5 comments:

Gary said...

Please send me an email. I'd be interested in finding out what you're working on. Also, I might be able to build and post something faster. If you'd be willing, it's possible to post up your examples on our site. We have added Knowledge Base articles on our site and are looking to build it up. If it's something you're looking for, then I'm sure others are too.

Gary
XHEO, Inc.

Anonymous said...

I'm anxious to hear your experiences. We purchased Xheo Codeveil earlier this year and like it. We're now considering purchasing DeployLX Pro to replace our current licensing system, too.

So far the only bad experience we've had with Xheo has been trying to reinstall Codeveil after putting a new HD into my ThinkPad, installing Vista (was formerly on XP) and then trying to reinstall Codeveil. I assume that Xheo uses their own licensing system and it ties the license to a hardware profile, so for a day now I've been unable to work with Codeveil because I cannot activate it. I've exchanged several emails with Gary and still haven't really gotten anywhere.

My primary concern is that I certainly don't want to put our customers through this same pain/frustration when they upgrade machines, so I'm hoping that the DeployLX licensing system can be configured to be a bit more "honest user friendly" since at least 98% of our customers are honest, so I don't want to punish them to protect against the 2% who are dishonest.

I'll be anxiously awaiting your feedback as yours is one of the few blogs I've found with any real useful "real world experience" about DeployLX.

Skittles.CBDotNet said...

Hi Jason,

I’m happy to share my experiences. At the moment I am currently developing the licensing system using DeployLX. I must say that since we purchased the full version I have had a lot better experience with the product as all of the limitations that are associated with the trial version are lifted but, I am still having some issues/problems/concerns.

I still have a lot of work to do before I can even demo to my managers. And to be 100% honest, I have found the learning curve to be quite steep but, I am coming into this know nothing about licensing of software.

I find testing of the licenses to be quite frustrating and I am trying to determine the best way to set up a test environment (testing on the development machine does not seem to be ideal). This means for me, development is slow because as soon as you test a license, you basically have to start again with a new test version of the product. (I think that setting the ShouldGetNewSerialNumber property of the LicenseValidationRequestInfo class to 'true' should sort this though).

I do think however, that a lot of the issues that I have maybe more to do with my understanding of how DeployLX works rather than how the product work. But I, like you am still a little worried about how it will all work in a real-world environment. For instance, today I am trying to write the code that will generate a license file (we will need this as we will sometimes need to generate an individual license for our clients) and every time I get to the line in the code key.SignLicense( license ); I am asked to register and activate my license again even though it is already registered and activated. Again, I am sure that this is something that I am doing wrong but if it’s happening to me, what's to stop it happening to our clients?

Even though Xheo have improved their online help recenetly, I really think that they should offer classroom or WEBEX style training.

Having said all that, I really like some features. The interface is excellent and DeployLX generates nearly all the code that you need to create,build and deploy both a license server and a network monitor.

Again, I’ll say that I looked at a lot of products and DeployLX does seem like the best solution. I will update my blog over the coming days with my experiences so far. Please get in touch if I can help in anyway.

Oliver said...

How's progress?!?

Skittles.CBDotNet said...

Hi Oliver,

I plan to do a number of blogs over the coming weeks detailing my experiences and lessons learned.