Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Developing and distributing licenced software 1

Status
Not open for further replies.

robert201

Programmer
Jul 18, 2007
80
TH
Hello,

VS 2005.

I am creating some software and don't want the software to be installed on any other computers.

I can give it to the customer, but how can I avoid the customer from installing it on other computers.

I think I need to create some license so that the setup I give them will not be able to install if it has already been installed on another computer.

Which is the best practice when it comes to distributing software and to avoid the customer from installing on many computers?

Many thanks for any advice,

Steve
 
Some Ideas...

If there is a central Database, you could consider using it to both hold an encrypted key the contains the number of licenses availible, and then use that database to also track how many installed applications are currently in use. I'm not sure it matters how many times it is installed as much as how many people are using it at the same time.

Things to think about:
- What will the key consist of?
- How will number of connections be counted and tracked?
- How will the users clear the count and restart the system if the power goes out and the applications do not exit properly?
------------------
You can also generate license keys, one for each installation. Then track the license key and the CPU-ID via: Then you could allow as many as maybe 30 CPU-ID changes before locking out the key and informing the user that the key has been found to be installed in multiple locations and to contact their administrator to resolve the problem. At that point they would have to come to you for a replacement key and possibly an additional key/license.

In either case, I would encrypt everything that is stored in that Database so that they don’t tamper with it.


Senior Software Developer
 
If you use the information for the CPU-ID in the link above, don't forget to also add a reference to the System.Management namespace.

Senior Software Developer
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top