需要有关实施限时试验的建议

时间:2008-10-13 15:31:41

标签: c++ desktop shareware trialware time-trial

我正在开发共享软件桌面应用程序。我需要实现试用/激活代码。你怎么处理这样的事情?我有自己的想法,但我想看看stackoverflow社区的想法。

我正在使用C ++ / Qt开发。目标平台是Windows / Mac / Linux。

感谢您的建议!

5 个答案:

答案 0 :(得分:23)

需要防范什么以及什么不能防范:

请记住,人们总能找到一种方法来绕过试用期。所以你想让这个人不得不绕过你的试用期令人讨厌,但是如果不可能绕过你的试用期并不重要。

如果有一个简单的机制,大多数人会认为尝试绕过试用期太多了。例如,人们总是可以使用filemon / regmon来查看在安装软件时哪些文件和注册表项发生了变化。

话虽这么说,一个简单的机制是最好的,因为它浪费的时间较少。

以下是一些想法:

  • 您可以在注册表中的某个位置为每个运行的唯一日期执行滴答计数。如果滴答计数> 30然后向他们显示过期消息。
  • 您可以存储安装日期,但请检查他们是否有比试用期更多的可用天数,然后告诉他们他们已过期。这样可以防止人们在安装到未来之前更改日期。
  • 我建议您进行卸载,删除“天数运行”计数。这是因为人们可能会在几个月后重新评估您的产品并最终购买。但如果他们无法评估,他们就不会购买。没有严肃的用户有时间卸载/重新安装只是为了获得额外的产品使用。

延长试验期

对于我们,当客户请求试用版扩展时,我们会向他们发送一封自动电子邮件,其中包含“TrialExtend.exe”程序和试用版扩展代码。该程序通过试用扩展代码与我们的服务器联系以验证它。如果验证了代码,则会重置其试用期。

答案 1 :(得分:3)

无论你做什么,都要密切关注系统日期。本书中最古老的技巧是在将来的某个时刻安装应用程序,然后在应用程序在第一次运行时存储愚蠢日期后返回实际日期。也许将密钥与在线存储库同步?

答案 2 :(得分:2)

Brian的答案很棒,但我想补充一些内容。

Linux用户通常不习惯为软件付费,他们往往更熟悉技术,甚至可能在开源问题上“虔诚”。

出于这个原因,我真的建议保持简单 - 购买软件真的只是一个小障碍,至少就像偷窃它一样容易。

我建议在试用期后唠叨或禁用某些功能(例如保存)而不是完全死亡。只是一个观察,但基于特征的限制似乎在Linux世界中更常见。

顺便说一下,将linux版本变成“一流”版本 - 体面的安装程序等会有所帮助。

如果你的体型相对较小,或者你的程序相对较小,那么任何人都很难有机会破解它 - 所以只要专注于制作一个好的产品,一旦时间到了就会直接傻逼。

答案 3 :(得分:0)

如果您[相当]可能有网络连接,您可以让安装程序在您的网站上注册,然后在每次启动时进行检查。

如果这不可行,将值写入文件系统上的世界可修改点(注册表项,条目和/ etc conf文件等)可能是可行的。

答案 4 :(得分:0)

也许真正的问题是时间有限的试验。我工作的公司做了很多Active Directory工作,我们通常将我们的软件限制为少量用户试用版。我认为以某种方式限制功能有时更好,更容易实现,并且当用户只是更改计算机上的日期时不会失败。
有一种平衡行为,你不能过于严格地限制功能,否则用户将无法从试用中获得任何东西。与此同时,过于宽松的限制也无法购买。