27

Visual Studio 是否具有用于创建软件试用版的内置工具?如果没有什么工具可以完成这项工作?

在 .NET 平台上创建试用版的最佳实践是什么?

这些做法如何取决于应用程序类型(Web 应用程序、Windows 窗体应用程序、dll 等)?

4

5 回答 5

9

Shareware Starter Kit很好地涵盖了这一点。它具有有限试用、安全激活、注册和 Paypal 集成的代码。强烈推荐,你不想发明那个轮子。

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

于 2010-03-11T13:58:41.630 回答
8

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

什么选择?

可本地安装的软件:

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

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

网络软件:

  • 试用或完整取决于用户帐户中激活的功能。由于所有用户都通过 Web 访问该应用程序,因此没有人拥有软件副本以未经授权的方式安装它。每个用户都使用自己的帐户,并且只能访问授予他们的功能。
于 2010-03-11T10:05:08.717 回答
3

检查以下线程 实现 30 天的时间试用。

有一些工具包可用于实现试用版功能,如线程 复制保护工具之一中提到的限制单元数量。

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

于 2010-03-11T10:02:14.657 回答
1

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

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

免责声明:我在 CryptoLicensing 的开发人员 LogicNP Software 工作

于 2011-07-29T08:02:33.330 回答
0

试用版功能是通过从注册表中读取安装日期来实现的,如果模式是试用或有效...

这些类可用于读写注册表...

    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;
        }
    } 
于 2013-01-09T09:55:20.093 回答