Question

Does Visual Studio have built-in tools for creating trial versions of software? If no what tools can do the job?

What are the best practices for creating trial versions on .NET platform?

How these practices depend on application type (web applications, Windows Forms applications, dll ect.)?

Was it helpful?

Solution

The "trial" status is a relatively fuzzy concept. It would be hard to specify it so precisely so that a "tool" can be built for it.

What option?

Locally installable software:

  • Legal restriction. Full functionality is give right off, but the user should willlingly stop using it after the trial period is over. Basically, protection by trust (for private users) or protection by legal prosecution (for company users).

  • Restricted functionality. Users can download a lite version. Whenever they decide to come to the full one, they request some license key that unlocks the rest of the functionality. Alternatively, you provide a secret download link for a full version. Even better, if you create watermarked binaries so you can track unauthorized usage/distribution to its source.

Web software:

  • Trial or full is a matter of activated features in the users account. As all users access the application via web, nobody has the software copy to install it in an unauthorized way. Each users works with their own account and has access to only features which are granted to them.

OTHER TIPS

This is covered very well in the Shareware Starter Kit. It has code for limited trials, secure activation, registration and Paypal integration. Highly recommended, you don't want to invent that wheel.

The link I gave you is not a great one, you have to click through the license to get to the download. I can't find a link anymore that describes the C# specific version of that kit.

Check the following thread Implementing a 30 day time trial.

There are toolkits which are available for implementing trial version features as mentioned in one of the threads Copy protection tool to limit number of units.

I am not aware if visual studio provides some built-in tools to implement the trial version feature in software.

There are built-in tools for licensing and copy protection in Visual Studio or .Net. You need to develop your own scheme or use a ready made one.

For best practices and tips, see this article : 8 Ways To Make Your Software Hacker-Proof and Crack-Proof With CryptoLicensing

DISCLAIMER: I work at LogicNP Software, the developers of CryptoLicensing

Trial version functionality is implemented by read from the registry the installed date and if the mode is Trial or Valid...

these classes can be use to read and write into and from the registry...

    static string Regname = "Registryname";
    public bool writeRegistryKey(string Key, string value)
    {
        try
        {
            Microsoft.Win32.RegistryKey key;

            key = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(Regname);
            key.SetValue(Key, value);
            key.Close();
            return true;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
            return false;
        }
    }

    public string readRegistryKey(string Value)
    {
        try
        {

            string keyValue = null;
            Microsoft.Win32.RegistryKey key;
            key = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(Regname);
            keyValue = key.GetValue(id).ToString();
            key.Close();
            return keyValue;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
            return null;
        }
    } 
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top