如何创build.NET软件的试用版本?
Visual Studio是否具有用于创build试用版软件的内置工具? 如果没有什么工具可以完成这项工作?
在.NET平台上创build试用版本的最佳实践是什么?
这些实践如何依赖于应用程序types(Web应用程序,Windows Forms应用程序,DLL等)?
“审判”状态是一个相对模糊的概念。 很难详细说明,以便为它build立一个“工具”。
什么选项?
本地安装的软件:
-
法律限制。 完整的function是正确的,但用户应该在试用期结束后千方百计地停止使用它。 基本上,通过信任保护(对于私人用户)或通过法律起诉保护(对于公司用户)。
-
受限制的function。 用户可以下载精简版。 无论何时他们决定采取全面措施,他们都会要求一些许可证密钥来解锁其余的function。 或者,您提供完整版本的秘密下载链接。 更好的是,如果您创build带水印的二进制文件,那么您可以跟踪未经授权的使用情况/分发到其来源。
networking软件:
- 试用版或完整版是用户帐户中激活function的一个问题。 由于所有用户都通过networking访问应用程序,所以没有人将软件副本以未经授权的方式安装。 每个用户使用自己的帐户,只能访问授予他们的function。
这在Shareware入门套件中得到了很好的覆盖。 它有代码进行有限的试用,安全激活,注册和贝宝集成。 强烈build议,你不想发明这个车轮。
我给你的链接不是很好,你必须点击许可才能下载。 我找不到描述该套件的C#特定版本的链接。
检查以下线程实施30天的计时。
有一些工具包可用于实现试用版function,如其中一个线程中提到的复制保护工具以限制单元数量。
我不知道,如果Visual Studio提供了一些内置的工具来实现软件的试用版function。
在Visual Studio或.Net中有内置的许可和复制保护工具。 你需要制定自己的计划或使用现成的计划。
要获得最佳实践和技巧,请参阅此文章: 使用CryptoLicensing实现软件防黑客和防破解的8种方法
免责声明:我在CryptoLicensing的开发者LogicNP Software工作
试用版function是通过从registry读取安装的date,如果模式是试用版或有效…
这些类可以用来读写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; } }
- entity framework – 无法将lambdaexpression式转换为“string”types,因为它不是委托types
- 为什么你不能使用null作为Dictionary <bool?,string>的键?
- 为什么C#multidimensional array不能实现IEnumerable <T>?
- 并发HttpWebRequest的最大数目
- 如何在C#WinForms中刷新ListBox的DataSource
- 如何从Visual Studio命令提示符以外的命令行运行regasm.exe?
- Httplistener与https支持
- 在C#中,我应该使用string.Empty或String.Empty或“”intitialize一个string?
- 让你的.NET语言在debugging器中正确的步骤