I'm looking for a library (for a C++ project) to protect a commercial software against world wide diffusion.

I'd like to restrict its usage on a per-client basis (+ time limit if possible).

Is there some kind of license manager toolkit available directly using Windows API? I need to support Windows 7 at least.

  • what exactly per-client means from your point of view? the number of installations? the number of concurrent users? the number of user accounts? etc.
    – Amin Saqi
    Sep 28 '14 at 13:42

Open Source:

I think that you can achieve your aims with Software Protector. With Software Protector you can generate and test validation of license keys - from the application itself, or embedding its logic into your app.

The feature which I think makes it suitable for you, is that you can define up to 8 license features and create license keys based on those features(whether be available or not).

you can limit the time of software usage by one feature, limiting the number of user accounts with another feature, etc.

You can see a demo and starter guide of it Here.


Install Key is a project written in vs 2008 and can be recompiled with Visual Studio 2008 or later. Works with Visual Studio 2008, 2010, 2012 or 2013 - C# or VB.Net. .Net 2.0 or 4.0 or later.

Its main capabilities is as the following:

  • Uses 30 character install keys made up of only capital alphanumeric characters. This helps to make keys easy to read and enter.
  • Key validation against a central server. Validating an install key against a server should prove to be harder to bypass.
  • Server validation is only required once. A surety file that is specific to the machine where the installation occurs can be validated again at any time, without another round trip to the license server.
  • Unique key usage counting. Key usage counting is done by comparing a machine name identifiers.

My decision:

I think your need will be achieved by Software Protector as you can define features in your software and then generate license keys based on those features.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.