How is the licensing of different versions of an application handled?
I have an app v1.0 that interfaces with Sheriff to provide protection. I create a new version, v1.1 that has some new features. If I simply copy the
new EXE over the old, and the new EXE has the same Product ID, Secret Codes etc, its still going to work. If my "upgrade" deletes the Sheriff
files (ActiveUser.SLS etc) then it won't work any more, of course. 'Feature access control' can also be used to control versions of an application (see Topic 18.104.22.168).
If we put our software on our web site, can we use Sheriff to control rights based on how long users should use the software demo after downloading it from our web site?
You can use Sheriff to control rights based on how long they can use the software after they have installed it - it is not possible to control their use of the software from the time they download it.
I need to have the capabilities to authorise a distributor to open my software n times only within 30 days. Is this possible?
Yes, you can combine 'date' and 'unit' metering to achieve this result.
When a user tries to install my program on another machine, the application should revert back to "demo" mode with specific function(s) turned off. Is this possible?
It depends on how the application defines "demo" mode. For example, the application could be coded so that if there is no valid licence found then it runs in demo mode automatically.
I am looking for a software only licensing solution. We are issuing multiple versions of our software and would like to let our customers purchase "limited upgrades", for example if a customer has 10 licences purchased, he can upgrade only 2 of them. The licensing program must be "smart" enough to let only 10 copies of the program run simultaneously, of which maximally two can be newer, upgraded version. Can this be done with your software?
Sheriff can be used to limit the number of concurrent users. Through the Sheriff API, you can check the number of active users at any time. If you decide that only 2 users out of 10 can run in full feature mode and the rest in trial mode, you can query Sheriff for the active users to check whether the number of active users is less than 2 and decide whether the current instance should be running in full mode or trial mode accordingly.