I have searched lots of way to make a 30 day trial limit of my program. They say "Use -Settings- in visual basic application for your variables" to save the information about user (like : registered or not registered or when the program expire). (You can see the 'Settings' when you double-click on "my project" in "solution explorer") Does the data which we use with "settings" sa开发者_JAVA技巧ved in our program or somewhere in the computer?
Myself, I have created my own logic to manage this. And yes, its about hiding where you store info and where you process it. Others use winlicence or something like it. However, nothing is unbeatable and its not uncommon to eventually get cracked. Also if you are using .net you need to obsufcate your code. Try Eazfuscator.NET (it was free until June 29, 2012 but you still can find the older free versions).
Common tradition is to obfuscate the trial counter and hide it somewhere, such as in local settings (if your application keeps them on the computer), or data files (if they are bound or specific to computer). You can try to hide the value in registry as well, but it's tracked quite easily there.
Also see this related question.
I haven't used it myself, but Rhino Licensing might be able to help you out.
One way would be to store the date of first use in a obscure registry location or a file. Then check the number of days elapsed everytime your app starts. If your app can use the internet, then you can do the same thing, but store the date of first use on your server - this way, the user cannot tamper with the registry/file.
If you have budget for commercial licensing schemes, see CryptoLicensing which supports trial licenses (x consecutive days, x unique days, etc), activations, machine-locking, etc.
DISCLAIMER: I work for LogicNP, the developer of CryptoLicensing.
精彩评论