分享一个单机软件试用期计时思路
2021/12/2 23:13:25
本文主要是介绍分享一个单机软件试用期计时思路,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.首次启动软件时,先获取自己软件写入的注册表项,如果已经存在了,再获取记录的时钟周期数,如果不存在的话,获取主机自cpu上电以来的时钟周期数,已纳秒为单位,然后把这个数保存到电脑自己的注册项里。 2.以后每次启动软件,都获取自cpu上电以来的时钟周期数,然后再去读取首次写入的那个数值。 3.两两相减,计算出的时间差就是软件再这台主机上存在的天数的纳秒值。 这样做及防止了更改系统时间,又防止了重装。 不过这个实在是依赖注册表了,注册表里的值被删了,那不就玩完了吖。还有,主板电池一泄电,那也完玩了。所以这个方法也不是很保险。 但如果软件一直不能联网,又不能借助其他设备,我也想不到其他方式了。能不能把值写入主机的硬件?或者写入windows系统,或者让用户无法修改注册表?这些不知可不可以深入研究一下。 获取时钟周期数可以用c++语言实现: inline unsigned __int64 GetCycleCount() { __asm RDTSC }这篇关于分享一个单机软件试用期计时思路的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign学习入门:轻松掌握微服务通信
- 2024-12-27OpenFeign学习入门:轻松掌握微服务间的HTTP请求
- 2024-12-27JDK17新特性学习入门:简洁教程带你轻松上手
- 2024-12-27JMeter传递token学习入门教程
- 2024-12-27JMeter压测学习入门指南
- 2024-12-27JWT单点登录学习入门指南
- 2024-12-27JWT单点登录原理学习入门
- 2024-12-27JWT单点登录原理学习入门