一步一步教你破解Tchart.net

1)某一天,当咱们忽然发现打开使用了tchart的控件的应用程序时蹦出以下对话框 函数

2)控件过了试用期了!!!,不用慌张,咱们一步一步来解除这个使用限制。用的是.net平台的程序嘛,源码都是可见的,也许咱们很容易从源码找到解决方案哦,如下要用到一个能够反编译.net程序的工具Reflector 工具

3)打开Relecotor ,加载咱们使用tchart控件引用的程序集,也就是直接打开tchart.dll文件 spa

4)找到TChart类,为啥要从找这个类开始???由于咱们使用TeeChart控件就是从实例化这个类开始的嘛,而后查看其构造函数.cor() .net

5)没看出啥名堂,继续查看两个初始化的函数,追踪到InitVars()函数,结果以下 code

6)看到问题了不???弹窗就是从这里出来的,有人说,我知道怎么作了,注释掉那行弹窗代码不就得了。确实是的,注释掉了就木的弹窗了,但是后面还有水印呀,这个不能彻底解决问题的。咱们该继续追踪evalExpired的值才对,evalExpired是chart的一个成员,那就去Chart类看看…… 源码

7)继续看initVar(); it

8) 看到了吧,要根本解决这个问题还得去Utils下的IsExpired函数找,咱们来看看里面都写了些啥 编译

9)如今已经很清楚了,解决的办法有两种,一种是修改这里程序,所有注释掉直接返回false,另外一种是不用该程序的,修改下注册表就ok了。其实后面一种方法我以为是比较好的,前面一种方法有点麻烦,该了以后还要从新编译,还要解决强签名的问题,后面的方法看只须要一次改注册表就能够相对永久的无偿使用了。 构造函数

10)第一次启动程序时注册表中写入的是当前日期的信息,前几行程序的意思就是试用期是否已经超过40天,若是咱们把启动日期改成n年后的某一天,那么咱们岂不是能够一直在试用期? 引用

11)再看最后几行代码,咱们只看年,str7表明年,也就是注册表中95和-48之间的数字,以下图表明12年,咱们若把12改成92,也就是一直能够用到2092年了,一辈子用够了,哈哈,就这样一次破解了tchart.net了

哦,强调下,修改的注册表键值为

HKEY_CLASSES_ROOT\CLSID\{CC7128D5-4CA2-4668-B37D-3819F6DCC2A3}\TypeLib
相关文章
相关标签/搜索