问题标签 [trial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
657 浏览

asp.net - ASP.NET web 控件 - 如何制作评估版或试用版?

我不得不开发一些自定义的 ASP.NET Web 控件,因为我找不到可以购买的具有所需功能的控件。我很惊讶我找不到我需要的东西,我认为我开发的 Web 控件可能对其他人有用。

所以我在想也许我可以卖掉我新开发的网络控件并赚钱。我意识到我可以让它们开源并要求捐款,但出于我不想进入这里的原因,我宁愿制作一个评估/试用版,然后要求人们购买许可证以使用它们比试用期长。

我从来没有想过如何制作软件的试用版。似乎任何有能力的 .NET 开发人员都可以通过使用可用的 .NET 反编译器之一轻松阻止我想出的任何东西。

任何人都可以提供一些关于如何实现软件评估/试用版的指针、参考资料(网页、书籍等)吗?

0 投票
1 回答
2163 浏览

vb.net - 创建 Visual Basic 应用程序的试用版

我使用 Visual Studio 2010 在 vb.net 中创建了一个应用程序。我想创建一个应用程序的安装文件,该文件不是免费的许可证,所以我想创建一个 30 jours 的试用版。如果有办法我谢谢你进步

0 投票
1 回答
699 浏览

windows-phone-7 - 向 Windows Phone 7 游戏添加试用模式和成就?

我将如何为我的 Windows Phone 7 游戏添加试用版和成就?

在发现它是试用版时,我如何制作游戏,提示用户购买游戏并将他/她重定向到 AppHub 上的游戏页面?

0 投票
1 回答
202 浏览

macos - 在 Mac 上存储许可证信息的最佳位置?

例如,如果我正在开发一个有 30 天试用期的应用程序,那么存储许可证信息的最佳位置是哪里?应用程序支持太容易获得了,但我不确定还有什么地方适合......

0 投票
5 回答
1112 浏览

trial - 试用版宽限期

我应该如何实施功能齐全的宽限期或 N 次使用方案,以最大限度地提高我 5 美元的小型社交网络 Windows 应用程序的销售额,同时鼓励从未(还没有?)付费的用户继续使用受限版本?

宽限期选项:

  1. 使用有限。使用 20 次后,将其削弱。
  2. 日历天有时间限制。首次使用 30 天后,该软件已瘫痪。
  3. 实际使用天数有时间限制,例如。7天。如果在 7+N 天的过程中使用 7 天,则在第 7 天后将其削弱。
  4. 限时。使用或玩耍 20 小时后,将其削弱。
  5. 将上述内容与渐进式瘫痪和可选的唠叨屏幕相结合。
  6. 唠叨屏幕,我不喜欢。

瘫痪软件并不是所有人都喜欢(尤其是开源阵营),但我的决定必须基于快乐的用户和谋生,所以我在下面汇总了我支持的关于限制软件的调查结果。

到目前为止,我的试用软件结论:

  • 专注于让你的软件变得更好,而不是花时间阻止破解者。如果它足够流行,它最终将被逆向工程。
  • 让客户享受您软件的全部功能......一段时间。依赖用户更有可能购买。
  • 假设它有任何好处,残废软件的销量是带有捐赠唠叨屏幕的软件的5 倍。
  • 让支付尽可能简单。
  • 感知价值很重要,但保持低价可能会导致冲动购买。
  • 定价真的很难
  • 提供 100% 无条件退款保证将带来更多销售。

我打算削弱我的演示版本,但我确实希望试用用户体验所有功能。这是一个小型消费者应用程序,具有潜在的庞大用户群,所以我正在考虑将其定价为~$5,但我不知道。对某些用户来说,它可能值 50 美元或 1 美元。我会把定价留到以后。这是关于瘫痪软件。

由按软件类型分组的真实数据支持的答案会更有帮助,但对此的任何想法表示赞赏。

0 投票
2 回答
1104 浏览

objective-c - 在可可中实施试用期的最有效/安全的方法

我正在完成一个将使用 CocoaFob 进行许可的 Cocoa 应用程序,我想知道在可可中实施试用期的“最”有效和安全的方法。

在此先感谢您的帮助,

问候,

0 投票
1 回答
351 浏览

silverlight - 如何在 Windows Phone 7 中创造良好的试用体验?

我找到了这段方便的代码来确定我的应用程序是否处于试用模式,另外还有一个好处是能够在模拟器中测试试用行为......

这很棒。我将能够相应地调整行为。

但除此之外,我希望有一些内置的 API,我实际上可以在其中获得一个带有按钮的对话框来购买应用程序。理想情况下,该按钮应将用户直接带到市场中的应用程序。

0 投票
5 回答
5188 浏览

c# - 用于软件保护目的的保护试用信息的存储位置

它可能与其他问题重复,但我发誓我在 Google 上搜索了很多并在 StackOverflow.com 上搜索了很多,但我找不到我的问题的答案:

在 C#.Net 应用程序中,在哪里存储保护试用信息,例如到期日期、使用次数?

我知道,各种软件保护策略都可以被老练的黑客破解(因为他们几乎总能绕过过期检查步骤)。但是我现在要做的只是以合理的方式保护它,使“普通”/“高级”用户无法搞砸它。

好的,为了证明我在 StackOverflow.com 上进行了很多搜索和搜索,我列出了我得到的所有可能的策略:

1.注册表项

首先,一些用户可能甚至无法读取注册表。

其次,如果我们将Protection Trial Info放在一个注册表项中,用户可以通过比较软件安装前后的差异,随时找到它在哪里。他们可以简单地改变它。

好的,您可能会说我们应该加密保护试用信息,是的,我们可以这样做。但是如果用户只是在安装之前更改了他们的系统日期呢?

好吧,你可能会说我们也应该放一个最后使用的日期,如果有问题,最后使用的日期可以作为保护指南。但是如果用户只是卸载软件并删除所有与该软件相关的注册表项,然后重新安装软件怎么办?

我不知道如何处理这个问题。请帮忙。

一个普通文件

首先,有一些地方可以放置纯文件:

  • 2.a) 软件安装路径下的简单XML文件
  • 2.b) 配置文件

同样,用户可以卸载软件并删除这些普通文件,然后重新安装软件。

- 软件本身

如果我们将保护试用信息(到期日期,我们不能输入使用次数)放在软件本身中,它仍然容易受到我上面提到的情况的影响。此外,这样做甚至都不酷。

- 试用产品密钥

它的工作方式类似于许可过程,也就是说,我们将试用信息放入 RSA 签名的字符串中。但是,用户尝试使用该软件需要执行太多步骤(他们可能会失去耐心):

  • 4.a) 用户下载软件;
  • 4.b) 用户通过提供用户名(或电子邮件)或硬件信息发送电子邮件请求试用产品密钥;
  • 4.c) 服务器接收到请求,对其进行 RSA 签名并发送回用户;
  • 4.d) 用户现在可以在(到期日期和使用次数)的条件下使用它。

现在,服务器已经记录了用户的用户名或硬件信息,因此用户将被拒绝请求第二次试用。收集硬件信息是否合法?

总之,用户必须多做一个步骤(请求试用产品密钥)才能尝试使用该软件,这并不酷(认为自己是用户)。

注意:这个问题不是关于许可,而是关于在哪里存储试用信息。试用期结束后,用户应申请许可证(CD-Key/Product-Key)。我将使用 RSA 签名(绑定到用户硬件)

PS:我的软件将针对中国市场,其软件市场与美国不同。大多数中国人只买硬件,一般不买微软Windows/Office之类的软件(他们只用盗版)。但是,一些针对特定领域的专业软件,如果没有破解版或者破解版很难安装,研究人员还是愿意购买的。

0 投票
1 回答
1867 浏览

java - Java:保护试用/演示期

我搜索了一下,在这里只找到了几个([ 1 ][ 2 ]) 的答案。不过,他们都没有真正回答我的问题。

我的申请将有三十天的试用期。保护程序的最佳方法是什么?我不担心饼干,只是乔平均重新安装程序。倒计时也不是一个真正的问题。

0 投票
2 回答
2552 浏览

python - 如何通过试用版测试扭曲的网络资源?

我正在开发一个 twisted.web 服务器 - 它包含一些资源,除了渲染内容之外,还使用 ​​adbapi 获取一些数据并将一些数据写入 postgresql 数据库。我试图弄清楚如何编写一个试验单元测试,它可以在不使用 net 的情况下测试资源渲染(换句话说:这将初始化一个资源,产生一个虚拟请求等)。

让我们假设 View 资源是一个简单的叶子,它在 render_GET 返回 NOT_DONE_YET 并修改 adbapi 以生成简单的文本作为结果。现在,我已经编写了这段无用的代码,但我想不出如何让它真正初始化资源并产生一些合理的响应:

输出是... 1. 我也尝试过这样的方法:输出 = request.render(view) 但相同的输出 = 1。为什么?我会非常感谢一些如何编写这样的单元测试的例子!