README.TXT
一、文件列表
Keymaker.exe 试用密钥盘生成程序, 运行环境: DOS6.22 或 WIN9X 下的纯 DOS 状态
Locking.vxd 虚拟设备驱动程序, 请拷入 Windows9X 的 system 目录中,NT 中不需要。
Locking.h
Locking.lib VC++_6.0 环境下32位库文件: 判断密钥盘是否正确并注册等的软件模块
使用方法: 参见 Locking.h 内容及有关书籍
Locking.dll 判断密钥盘是否正确并注册等的动态链接库,
供 VC、VB、VF、DELPHI、PB、C++ Builder、Authorware 等程序调用
VC60 目录 在VC60中调用 LIB 和 DLL 的例子源程序
VB60 目录 在VB60中调用 Locking.dll 中函数的例子源程序
VF60 目录 在VFoxPro60中调用 Locking.dll 中函数的例子源程序
DELPHI5 目录 在DELPHI50中调用 Locking.dll 中函数的例子源程序
PB70 目录 在PowerBuilder70中调用 Locking.dll 中函数的例子源程序
C++Builder50 目录 在Borland C++ Builder50中调用 Locking.dll 中函数的例子源程序
Authorware 目录 在ATHWARE中调用 Locking.dll 中函数的例子源程序
Register.exe 32位判断密钥盘是否正确并注册等的程序,
运行环境: Windows2000、WindowsNT、Windows98、Windows95
二、Locking.lib 提供的函数等
int Register(int rw); //检测密钥盘并注册调用函数,操作正确返回值为零,否则为 -1。
//rw=0 检测密钥盘并注册。
//rw=1 检测密钥盘并撤消注册。
//rw=2 只检测密钥盘不注册。
int Testkey(int Idate,int Ok_No);
//检测软件是否注册函数,已注册返回值为零。,否则为 -1。
//参数:
Idate 软件不注册可试用的天数,最大值为 99
Idate<=0 时软件不提供试用功能
Ok_No=0 时,试用期过后,把系统时间改回来,可继续试用
Ok_No!=0 时,试用期过后,把系统时间改回来,也不能使用
//在试用期间,为防止用户始终修改系统时间后,再运行程序。
//模块中同时对软件使用次数进行了限制,若超过限制次数 5*Idate,
//软件同样不能运行,您可根据您软件使用的频率要求设置限制的次数
//具有计数功能,当软件使用次数大于一定数值后(这里为10次),
//会自动要求用户重新插入密钥盘,重新注册。
int testlock[10]; //软件已注册,此数组各元素的值分别
//为 0,否则为随机数。
//在应用程序中调用 Testkey(void) 后,穿插
//使用或判断这个数组,能有效防止程序被软
//解密。
三、Locking.dll 提供的函数等
int _stdcall TKRegister(int rw);
//检测密钥盘并注册调用函数,操作正确返回值为零,否则为 -1。
//rw=0 检测密钥盘并注册。
//rw=1 检测密钥盘并撤消注册。
//rw=2 只检测密钥盘不注册。
int _stdcall Testkey(int Idate,char * testlock,int Ok_No);
//检测软件是否注册函数,已注册返回值为零。,否则为 -1。
//参数:
Idate 软件不注册可试用的天数,最大值为 99
Idate<=0 时软件不提供试用功能
Ok_No=0 时,试用期过后,把系统时间改回来,可继续试用
Ok_No!=0 时,试用期过后,把系统时间改回来,也不能使用
//在试用期间,为防止用户始终修改系统时间后,再运行程序。
//模块中同时对软件使用次数进行了限制,若超过限制次数 5*Idate,
//软件同样不能运行,您可根据您软件使用的频率要求设置限制的次数
//在调用Testkey(testlock)前,要定义 char testlock[10];
//软件已注册,此数组十个元素的值分别
//为 0,否则为随机数。
//在应用程序中调用 Testkey(Idate,testlock,Ok_No) 后,穿插
//使用或判断这个数组,能有效防止程序被软解密。
//可具有计数功能,当软件使用次数大于一定数值后(这里为10次),
//会自动要求用户重新插入密钥盘,重新注册。
//可再增加一设置软件能同时在多台机器上安装注册的参数 int jiqishu。
int _stdcall Tkey(int Idate,int Ok_No)
//检测软件是否注册函数,已注册返回值为零。,否则为 -1。
//参数:
Idate 软件不注册可试用的天数,最大值为 99
Idate<=0 时软件不提供试用功能
Ok_No=0 时,试用期过后,把系统时间改回来,可继续试用
Ok_No!=0 时,试用期过后,把系统时间改回来,也不能使用
//在试用期间,为防止用户始终修改系统时间后,再运行程序。
//模块中同时对软件使用次数进行了限制,若超过限制次数 5*Idate,
//软件同样不能运行,您可根据您软件使用的频率要求设置限制的次数
//具有计数功能,当软件使用次数大于一定数值后(这里为10次),
//会自动要求用户重新插入密钥盘,重新注册。
//与上一个函数的区别就是不带指针参数 testlock,方便调用。
//最好用上一个函数:
int _stdcall Testkey(int Idate,char * testlock,int Ok_No);
//可再增加一设置软件能同时在多台机器上安装注册的参数 int jiqishu。
四、软件模块的建议使用方法
方法一:
1、在您的安装软件中调用检测密钥盘并注册的函数:Register(0)(或TKRegister(0)),返回值为零,继续安装;为 -1,说明密钥盘错误或注册失败,可中断安装。请一定先把 Locking.vxd 拷入 Windows9X 的 system 目录中,再调用上述函数。
2、在您的卸载软件中调用检测密钥盘并撤消注册的函数:Register(1)(或TKRegister(1)),返回值为零,撤消注册;为 -1,说明密钥盘错误或撤消注册失败。
3、在您的软件中调用检测软件是否注册的函数 Testkey(30,testlock,0)(或Tkey(30,0)),返回值为零,说明软件已注册,软件可继续运行;否则软件没有注册,应中断您的软件。建议在软件刚启动时就调用这个函数。
4、在调用检测软件是否注册的函数 Testkey(30,testlock,0) 后,穿插使用或判断数组 testlock[10],能有效防止程序被软解密。
方法二:
1、在您的安装软件中调用(或不调用任何函数)只检测密钥盘不注册的函数:Register(2),返回值为零,继续安装;为 -1,说明密钥盘错误,可中断安装。
2、建议在您的软件中添加两个菜单:“注册软件”和“撤消注册”,以方便用户注册或撤消注册到另一机器安装;并分别调用:Register(0) 和Register(1) 函数,返回值为零,说明注册或撤消注册成功,否则为失败。
3、在您的软件中调用检测软件是否注册的函数 Testkey(30,testlock,0),返回值为零,说明软件已注册,软件可继续运行;否则软件没有注册,应中断您的软件。建议在软件刚启动时就调用这个函数。
4、在调用检测软件是否注册的函数 Testkey(30,testlock,0) 后,穿插使用或判断数组 testlock[10],能有效防止程序被软解密。
在打包您的软件产品时,要同时把 Locking.vxd 打包进去,在安装软件时,要首先把它拷入 Windows9X 的 system 目录中。
四、本加密软件特点
1、使用本加密注册模块加密的软件,用户只能在一台机器上安装使用。若软件已在一台机器上安装注册成功,若再在其它的机器上安装注册就不能成功了。可设置软件能同时在多台机器上安装注册。
2、注册或撤消注册时需要在软驱中插入打开写保护的密钥盘,注册后的软件就不需要密钥盘就可正常运行了。可设置注册后的软件在运行一定次数后,重新要求用户在软驱中插入打开写保护的密钥盘并注册。
3、若用户想把软件安装到另一机器上运行,必须先在原注册机器上撤消注册,这样原机器上的软件就不能运行了,并可在别的一个机器上安装注册。
4、若安装在机器上的软件被损坏,可重新安装注册软件;若系统崩溃,可重新安装系统及软件,重新注册。软件仍能在这台机器上注册。
5、若用户硬盘万一损坏,软件就不能注册了。可通过更换密钥盘,或寄去一软件让用户销去密钥盘上原注册信息(当然只能运行一次或几次),或要求原加密模块能在两台或多台机器上注册即可。
泰山医学院计算中心 271000 张裕飞
http://www.Zlocksoft.com
e-mail: Zlocksoft@Zlocksoft.com
电话:0538-6222485
13001773563