【发布时间】:2012-10-09 02:38:50
【问题描述】:
是否有任何框架可以使用 C/C++ 实现许可证管理?
我需要限制我的应用程序的使用时间。例如,通过一个许可证文件,某人可以使用软件 util december/2012。
我可以使用机器时钟,但用户可以更改机器时间。
【问题讨论】:
-
多平台还是仅限 Windows? Flexlm 使用 COM 工作,因此如果您在 Windows 平台上,可以将其集成到您的 C++ 应用程序中。
-
独立于平台。我有一个使用 HASP 的 Windows 解决方案,但不是更好的解决方案。
-
您的陈述“我可以使用机器时钟,但用户可以更改机器时间”意味着您想要一些您实际上无法拥有的东西。通常不可能阻止用户绕过您的许可证管理。但是,如果您只关心从诚实用户那里获得付款,并且可以接受有些人会盗版您的代码,而不管您采取什么措施来阻止它,那么有很多库可以做到这一点。
-
您可以实现自己的:使用电子签名的令牌并在线检查它们(这将解决时钟问题)。但是如果人们修改了你的代码,你就会被烤焦。 SaaS“解决”了这个问题,因为用户永远看不到代码。
-
还值得一提的是,您越努力确保每个用户都拥有有效的许可证,您就越会激怒您的诚实用户,这会直接导致销售损失。例如,早在九十年代(当时我还是一名化学研究生),我就放弃了一个大牌的商用计算机代数系统,因为它的许可证管理与我大学的防火墙不兼容。
标签: c++ c licensing software-distribution platform-independent