NET Win HTML Editor Control破解过程全记录

NET Win HTML Editor Control破解过程全记录

前几天做项目。需要用到一个WinFormHTML的编辑和现实控件。.NET自己并没有提供这方面的控件。去Googel百度了一下。没有找到合适的.NET控件。无奈去英文Googel了一下。果然发现了一款名为:.NET Win HTML Editor Control 3.2的控件。下载配置环境试用。发现免费版提供的是全功能界面。唯一不好的地方就是在编辑区有一个注册的链接。着实讨厌。

去他的网站http://www.spicelogic.com/purchase.aspx?productID=WinHTMLEditorControl看了一下注册价格$149.99。他NND将近1000大元我可没那个钱。没办法只能破解了,可不是我想破解它。的确是他逼我的,谁让它那么贵呢。

整理一下破解思路如下:

1.         首先使用Reflector反编译工具尝试反编译程序。

2.         查找程序判断是否注册或者显示非注册版限制的代码。

3.         使用ilDasm反编译DLLIL文件。

4.         去掉“判断是否注册”的代码或者“显示非注册版限制”的代码。

5.         使用ILasm编译IL文件为DLL

6.         使用VisualStudio编写例子程序测试。

标准的破解流程。还好破解需要的软件电脑上都有,不需要从新下载。说干就干。

第一步:使用Reflector反编译程序:

      

哭泣!代码进行了混淆。虽然还是可以看得懂。不过估计没个十天半个月是搞不定了。我可没那么好的耐心。难道真的破解不了了么?算了直接跳过这步进行第三步。

第三步:使用ilDasm反编译DLLIL文件

       使用ilDasm反反编译DLLIL文件的方法如下:进入命令行模式。

进入.NET SDK目录输入:

iLDasm.exe WinHTMLEditorControl.dll /out=E:\il\ WinHTMLEditorControl.il

 输入命令为:

ildasm+空格+ [dll文件所在的路径] +空格+/out=[il输出的路径]

第四步:去掉“判断是否注册”的代码或者“显示非注册版限制”的代码

使用Visual Studio打开WinHTMLEditorControl.il。不管三七二十一先找到:

.publickey = (00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00   // .$..............

                00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00   // .$..RSA1........

                F5 F3 1F 13 1D D7 B1 30 75 AD 0F B8 45 09 7E 6E   // .......0u...E.~n

                BF 73 98 FC 49 88 47 BB BA AC 9F 88 78 54 FD B3   // .s..I.G.....xT..

                EC DC 89 27 70 84 B4 01 6D A9 9C 45 95 97 79 80   // ...'p...m..E..y.

                4E 4D E1 C2 43 13 20 38 DB 2F 33 87 69 9C BA A6   // NM..C. 8./3.i...

                F6 7C D3 7B 5F 08 BE FA BA 9C 5D 61 2C 66 BD 06   // .|.{_.....]a,f..

                2A 81 BE B1 6D 55 8C 01 5D CA 2B 87 79 D9 2C 8E   // *...mU..].+.y.,.

                42 2C 7B B0 97 49 C5 6E F5 B3 C6 05 39 12 23 0A   // B,{..I.n....9.#.

                40 DD 07 FF 73 85 C6 29 73 F9 5D 30 88 93 CB E3 ) // @...s..)s.]0....

把这段代码删除。先把那那个什么什么Key去掉。

然后查找“Click here to Purchase and remove this link”因为它免费版提示的就是这句话。

找到如下代码:

IL_01f4:  ldfld      class [System.Windows.Forms]System.Windows.Forms.LinkLabel WinHTMLEditorControl.winHTMLEditorControl::xa1f1f9a7278f5fa8

IL_01f9:  ldstr      "Click here to Purchase and remove this link"

IL_01fe:  callvirt   instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string)

IL_0203:  br         IL_0359

看来这个代码是把字符串“Click here to Purchase and remove this link”赋值给LinkLabel。这个就是增加免费限制的代码了。先小小的修改一下修改代码如下:

IL_01f4:  ldfld      class [System.Windows.Forms]System.Windows.Forms.LinkLabel WinHTMLEditorControl.winHTMLEditorControl::xa1f1f9a7278f5fa8

IL_01f9:  ldstr      ""

IL_01fe:  callvirt   instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string)

IL_0203:  br         IL_0359

同样给LinkLabel赋值。不过只赋一个空值。

第五步:使用ILasm编译IL文件为DLL

使用ilasm编译ilDLL文件的方法如下:进入命令行模式。

进入ilasm.exe所在目录输入:

Ilasm.exe /dll E:\il\WinHTMLEditorControl.il。编译成功。

 

 输入命令为:

Ilasm+空格+[il文件所在的路径]+空格+/dll/output=[输出dll文件的路径]

第六步:使用VisualStudio编写例子程序测试

使用VisualStudio因为修改后的DLL。编译结果如下:

限制没有了,而且是全功能的破解成功!

 

你可能感兴趣的:(NET Win HTML Editor Control破解过程全记录)