如何创建.NET软件的试用版?

发布于 2024-08-24 13:00:43 字数 1539 浏览 9 评论 0 原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

み格子的夏天 2024-08-31 13:00:43

共享软件入门工具包对此进行了很好的介绍。它具有用于有限试用、安全激活、注册和 Paypal 集成的代码。强烈推荐,你不想发明那个轮子。

我给您的链接不是很好,您必须单击许可证才能下载。我找不到描述该套件的 C# 特定版本的链接。

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.

节枝 2024-08-31 13:00:43

“试用”状态是一个比较模糊的概念。很难如此精确地指定它以便为其构建“工具”。

什么选择?

本地可安装的软件:

  • 法律限制。完整的功能是立即提供的,但用户应该在试用期结束后自愿停止使用它。基本上,通过信任保护(对于私人用户)或通过法律起诉保护(对于公司用户)。

  • 功能受限。用户可以下载精简版。每当他们决定使用完整功能时,他们都会请求一些许可证密钥来解锁其余功能。或者,您可以提供完整版本的秘密下载链接。更好的是,如果您创建带水印的二进制文件,以便可以跟踪其来源的未经授权的使用/分发。

网络软件

  • 试用版或完整版取决于用户帐户中激活的功能。由于所有用户都通过网络访问该应用程序,因此没有人拥有软件副本来以未经授权的方式安装它。每个用户都使用自己的帐户,并且只能访问授予他们的功能。

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.
黎歌 2024-08-31 13:00:43

检查以下线程
实施 30 天的计时试验。

有一些工具包:可用于实现其中一个线程中提到的试用版功能
用于限制单位数量的复制保护工具。

我不知道Visual Studio是否提供了一些内置工具来实现软件中的试用版功能。

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.

怪我太投入 2024-08-31 13:00:43

Visual Studio 或 .Net 中有用于许可和版权保护的内置工具。您需要制定自己的方案或使用现成的方案。

有关最佳实践和提示,请参阅本文:使用 CryptoLicensing 让您的软件防黑客和防破解的 8 种方法

免责声明:我在 LogicNP Software 工作,该公司是 CryptoLicensing 的开发人员

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

七月上 2024-08-31 13:00:43

试用版功能的实现是
从注册表中读取安装日期以及模式是否为试用或有效...

这些类可用于从注册表中读取和写入...

    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;
        }
    } 

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;
        }
    } 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文