我为摄影师写了一个实用工具,我打算在网上卖得很便宜(10美元).我想让用户在要求许可之前试用软件一周左右.由于这是一个个人项目而且软件价格不是很高,我认为购买专业许可提供商的服务并不值得,而且我自己动手.
当前,应用程序检查包含加密字符串的注册表项,该字符串指定试用期到期或具有有效许可证.如果密钥不存在,则创建试用期密钥.
所以你需要做的就是免费获得另一周是删除注册表项.我不认为很多用户会这样做,特别是当应用程序只有10美元时,但我很好奇是否有更好的方法来做到这对合法用户来说并不繁琐.我正常编写Web应用程序,之前没有处理过这些内容.
该应用程序是在.NET 2.0中,如果这很重要.
编辑:您可以通过将注册表信息存储在本地安全机构(LSA)中,使您当前的许可方案更难以破解.大多数用户将无法从那里删除您的密钥信息.在MSDN上搜索LSA应该可以为您提供所需的信息.
关于许可方案的意见因人而异,开发人员比特定用户群(如摄影师)更多.考虑到您的应用程序将解决的业务需求,您应该深呼吸并尝试查看目标用户可以接受的内容.
这是我对这个问题的个人看法.会有声音的人不同意.
答案很大程度上取决于您对应用程序的使用方式.如果您希望每天多次使用该应用程序,您将从非常长的试用期(几个月)中受益最多,以创建锁定情况.为此,您必须有一个宽限期,软件会提醒用户很快就需要付款.在宽限期之前,如果软件对试用期保持沉默,您将获得更大的成功.
不管你有没有选择相信这个非常大胆的陈述,当然完全取决于你.但如果你这样做,你应该意识到申请的使用频率越低,试用期就越短.同样非常重要的是,用户付款非常快速和简单(尽可能少的数据输入和尽可能少的点击).
如果您对应用程序的使用非常不确定,则应选择非常短的试用期.根据我的经验,如果应用程序对这种情况下处于试用阶段的事实保持沉默,您将获得更好的结果.
尽管许可证有效,但"回家"功能被许多人视为隐私威胁.就个人而言,我不同意这样的观点,即对于愿意为他/她正在使用的软件付费的客户而言,这有任何不利之处.因此,我建议实施许可方案,其中应用程序定期检查许可证状态(试用,付费),并帮助用户在适当的时候支付软件费用.但是,对于小型实用程序应用程序而言,这可能是过度的.
对于非常小的,甚至是简单的实用程序应用程序,我认为没有试用期的预付款是最有效的.
关于解决方案的安全性,您必须使其与开发工作成比例.在我的工作中,安全性非常关键,因为涉及合作伙伴和经销商,并且因为在开发方面的投资非常高.对于小型实用程序应用程序,定价更合理,并依赖诚实用户,这些用户将为满足其业务需求的软件付费.
做复杂的保护方案没有多大意义.基本上会发生两件事之一:
你的应用程序不够流行,没有人破解它.
你的应用程序变得流行,有人破解它并释放它,那么任何没有知识的人都可以简单地下载该破解,如果他们想欺骗你.
在#1的情况下,不值得为该计划投入大量精力,因为您可能会让一两个额外的人购买您的应用程序.在#2的情况下,不值得付出很多努力,因为无论如何有人会破解它,并且会浪费精力.
基本上我的建议只是做一些简单的事情,就像你已经做的那样,这同样有效.那些不想欺骗/偷你的人会付钱,想欺骗你的人会这样做.