We are seeking advice from anyone that has successfully implemented Rhino Licensing in a .NET desktop application. We have successfully integrated Rhino Licensing into our C# Winforms application as per the instructions found at;
At the moment the only way to open our software is to link it to a valid license file. We plan to issue trial licenses (expiring after 30 days) to all users requesting a trial but question is how can we put in place a scheme which prevents users from obtaining a new trial/demo license each time the license expires. This would theoretically give them the ability to license our software for multiple trial periods, possibly inevitably.
My concern relates to the issue of trial licenses. We had originally thought to limit the issue of trial licenses based on an email address provided to use when the original license is generated but now there exists the potential for users to make use of temp inbox email accounts to register for an unlimited number of licenses.
What methods have you employed to prevent users from being re-issued with trial/demo licenses after the initial period has expired? Please assume the original licenses are being served to the user automatically from a server after they register for a trial license.
All ideas welcome.
You can create a unique hardware ID that is sent to the server when the user "activates" the license and save it.
If the user requests a new trial and tries to activate it, the server will respond indicating the hardware ID already exists in the database and revoke the license.