关于软件使用期限的设定,急急急急.......

yydyqy 2003-03-13 02:37:44
如何设定软件使用的期限,如使用30天后将不能继续使用,要求改变系统时间不影响使用期限的设定,如设定期限为30天,30天后改变系统时间也不能运行该软件。
...全文
120 点赞 收藏 9
写回复
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hanrong 2003-03-18
将本次运行和关闭程序的时间记录下来,判断是否有系统时间回调的情况出现。记录的位置可以是注册表,程序文件本身,或着bios的保留区域,呵呵!
回复
zfr 2003-03-17
rtdb(东临碣石) && XiangDong(木头)

赞同
回复
XiangDong 2003-03-17
哦,只能在注册表里写一个加密字符串来表示已经使用的时间,每运行比如一分钟改变一次,结合系统时间检查,
最好的办法就是带个狗,不过这样代价太高了
回复
tempvc 2003-03-17
检查windows的system下面某一个文件的传间时间。他更改时间不会变的
回复
rtdb 2003-03-14
个人一点想法:
1. 30天有效期, 超前30天也不可以, 这样用户只能将日期改到安装日期左右才可以。
2. 内部还是要有计数器, 计录上次运行时间, 发现下次运行时间反倒早时, 就可以做点手脚了。
回复
laolaoliu2002 2003-03-14
是吗?我没具体试验。谢谢提醒。
回复
yydyqy 2003-03-14
laolaoliu2002(老刘)
这个方法在用户改变系统时间时好像无效?谢谢。
回复
laolaoliu2002 2003-03-13
在InitDialog中加入如下代码
#ifdef BETA_VERSION

tm tm_data;
char str[100];

_getsystime(&tm_data);

if((tm_data.tm_year != YEAR) || ((tm_data.tm_mday > DAY) && (tm_data.tm_mon+1 == MONTH)) || (tm_data.tm_mon+1 != MONTH))
{
sprintf(str, "This is only a BETA version for a month!\nYear: %d\nMonth: %d\nDay: %d\n", 1900+tm_data.tm_year, tm_data.tm_mon+1, tm_data.tm_mday);
MessageBox(NULL, str, "BETA", MB_OK);
MessageBox(NULL, "This beta version of API-Spion for Windows has expired!", "BETA", MB_OK);
exit(0);
} else {
sprintf(str, "This is only a BETA version for a month!\nYear: %d\nMonth: %d\nDay: %d\n", 1900+tm_data.tm_year, tm_data.tm_mon+1, tm_data.tm_mday);
MessageBox(NULL, str, "BETA", MB_OK);
}

#endif
回复
eyancom 2003-03-13
你可以在程序里加个时钟啊!到点了就让它OVER啊。
回复
发动态
发帖子
网络编程
创建于2007-09-28

1.8w+

社区成员

VC/MFC 网络编程
申请成为版主
社区公告
暂无公告