请问如何将软件运行指定次数
例如现在已经编写一个软件,但是只想让它运行三次,也就是运行三次后,就不能再运行了,请问如何实现? 问题点数:20、回复次数:21Top
1 楼qrlvls( 空 气 )回复于 2004-12-01 18:28:46 得分 0
在磁盘上做标记,或者看看系统中是否有不影响其它功能的存储区Top
2 楼handwolf(青松崖)回复于 2004-12-01 18:38:00 得分 10
可以在注册表中写个隐蔽的字段!代码如下:
最好添加在BOOL CYourApp::InitInstance()中
/////////////////////////////////////////////////
CRegKey hKey;
if(hKey.Create(HKEY_LOCAL_MACHINE,"SOFTWARE\\MICROSOFT\\WINDOWS\\CURRENTVERSION") == ERROR_SUCCESS)
{
BOOL bWrite = TRUE;
TCHAR scTemp[_MAX_PATH];
DWORD dwCount = sizeof(scTemp);
if(hKey.QueryValue(scTemp,"SystemVctmp",&dwCount) == ERROR_SUCCESS)
{
if(atoi(scTemp)>3){
// MessageBox(NULL,"试用版到期!","提示",MB_OK);
// abort();
}else{
int nTime = atoi(scTemp);
nTime = nTime + 1;
CString str;
str.Format("%d",nTime);
hKey.SetValue(str,"SystemVctmp");
bWrite = FALSE;
}
}
if(bWrite)
hKey.SetValue("1","SystemVctmp");
hKey.Close();
}Top
3 楼songsu(松鼠)回复于 2004-12-01 19:29:12 得分 0
不行不行
客户用还原精灵,老是把我做的标记文件还原,一还原它就又可以用了!
晕死了!!!Top
4 楼chinagaici(山沟里跑出来的穷小子 )回复于 2004-12-01 19:48:00 得分 3
好办,再你的可执行文件的末尾做个标记不就行了,这个客户是不能给清除的。Top
5 楼kugou123(酷狗)(彪悍的人生,不需要解释 www.xiaozhou.net)回复于 2004-12-01 20:03:39 得分 2
把次数写入exe文件本身的末尾。Top
6 楼iicup(双杯献酒)回复于 2004-12-01 20:27:34 得分 0
有还原精灵,估计没有什么好方法吧。Top
7 楼songsu(松鼠)回复于 2004-12-01 20:31:29 得分 0
各位大哥可不可以说的具体一点?我有一点不明白
是不是在程序里面定义一个静态变量?
例如
static int usernumber;//定义一个静态变量,不知道这样行不行?是不是这里分配的内存在下一次程序启动后,这个程序还是用的这个内存呀?
usernumber=3;
//然后在每次程序运行的结尾
usernumber=usernumber-1;
//是不是这样?
Top
8 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2004-12-01 20:52:47 得分 0
这样还是可以改Top
9 楼nastar(阿门)回复于 2004-12-01 20:58:19 得分 0
再静态,也被还原Top
10 楼songsu(松鼠)回复于 2004-12-01 20:59:15 得分 0
那大哥可不可以给一个可行性的方案?
我很急
先谢了!
主要是针对用户的还原精灵设计的!!!!Top
11 楼broown(程序员吃鱼香肉丝是很合理的)回复于 2004-12-02 00:08:55 得分 2
把次数写入exe文件本身的末尾。
======================
对这个方法感兴趣!
能介绍吗?Top
12 楼handwolf(青松崖)回复于 2004-12-02 09:04:22 得分 3
看看
http://www.vckbase.com/code/listcode.asp?mclsid=15
其中的
多文件的合并与分解
也许年可以找到写入exe文件本身的末尾的启发!Top
13 楼nastar(阿门)回复于 2004-12-02 09:07:19 得分 0
倒。写哪不被还原???Top
14 楼iicup(双杯献酒)回复于 2004-12-02 09:15:25 得分 0
还原精灵相当于重新安装系统,
写到硬盘上,哪里还不是一样被还原?
因此,不能写在硬盘上。
建议从网络激活使用,
这样就脱离了用户还原精灵的控制范围。
Top
15 楼Rogeremail(绿色环保-菜青虫)回复于 2004-12-02 13:15:40 得分 0
直接写扇区,写到还原精灵的数据区,再标志为坏扇。用的时候再打开。Top
16 楼kurapika5(kurapika)回复于 2004-12-02 13:22:50 得分 0
网络验证是唯一方法了,,就像网游的点卡....Top
17 楼songsu(松鼠)回复于 2004-12-02 21:16:31 得分 0
哦,天啦,还这么麻烦!
唉,程序员真是命苦,看来用户还是可以想尽办法的破解啊!
还原精灵,实在是太厉害了!
不过我看过有些病毒在安装了还原精灵的电脑上也可以存在,不知道用了什么技术!!!Top
18 楼songsu(松鼠)回复于 2004-12-02 21:18:32 得分 0
一个小软件还要从网络上激活??
第一,技术问题
第二,相关的设施不充许向一个网络游戏一样!!
所以,我还是想从软件的自身出发,来考虑这个问题1!!!Top
19 楼wangjia184(我就是传说中的。。。。。。SB)回复于 2004-12-02 21:41:17 得分 0
楼上 你怎么老是找我一步啊?
破解还原精灵 或者 还原卡 在做标记呢?Top
20 楼songsu(松鼠)回复于 2004-12-03 18:41:49 得分 0
wangjia184(SB) 大哥,你说什么呢?
能不能说的具体一点?Top
21 楼songsu(松鼠)回复于 2004-12-03 21:27:45 得分 0
to handwolf(初学者) 大哥,网站打不开啊!Top




