您的位置:首页 > 其它

引用 Reflector.exe + ilDasm.exe + ilasm.exe 破解DundasWebChart(VS2005) 5.5 成功

2009-03-13 21:27 369 查看
Reflector.exe + ilDasm.exe + ilasm.exe 破解DundasWebChart(VS2005) 5.5 成功

1. 工具准备

.net FrameWork SDK 2.0

ILDASM反编译工具

ILASM重新编译工具

2. 安装Dundas Chart for ASP.NET - Enterprise Eval (VS2005)

3. 用Reflector.exe 找开 DundasWebChart 分析其水印的方法

public void Paint(Graphics graph, bool paintTopLevelElementOnly, RenderingType renderingType, XmlTextWriter svgTextWriter, Stream flashStream, string documentTitle, bool resizable, bool preserveAspectRatio)
{
………………………..
//注意:不管如何都会在Chart是绘制水印字符串,这很简单,将this.e=true 改为this.e=false;就可以了.
this.e = true;
if (this.e)
{
StringFormat format1 = new StringFormat();
format1.Alignment = StringAlignment.Center;
format1.LineAlignment = StringAlignment.Center;
SolidBrush brush1 = new SolidBrush(Color.FromArgb(40, 0, 0, 0xaf));
SolidBrush brush2 = new SolidBrush(Color.FromArgb(40, 200, 200, 200));
Font font1 = new Font(ChartPicture.a(), 8f);
SizeF ef3 = this.a.GetRelativeSize(new SizeF(2f, 2f));
//水印字符串
string text1 = cP.a("/u14ad/u14de/u14d7/u14cd/u14ca/u14dc/u1489/u14ac/u14d1/u14ca/u14db/u14dd/u1489/u1496/u1489/u14aa/u14bc/u14b9/u1497/u14b7/u14ae/u14bd/u1489/u14ae/u14d7/u14dd/u14ce/u14db/u14d9/u14db/u14d2/u14dc/u14ce/u1489/u14ae/u14cd/u14d2/u14dd/u14d2/u14d8/u14d7/u1476/u1473/u14ae/u14df/u14ca/u14d5/u14de/u14ca/u14dd/u14d2/u14d8/u14d7/u1489/u14b6/u14d8/u14cd/u14ce/u1489/u14ae/u14d7/u14ca/u14cb/u14d5/u14ce/u14cd/u1495/u1489/u14cf/u14d8/u14db/u1489/u14dd/u14ce/u14dc/u14dd/u14d2/u14d7/u14d0/u1489/u14d9/u14de/u14db/u14d9/u14d8/u14dc/u14ce/u14dc/u1489/u14d8/u14d7/u14d5/u14e2/u1476/u1473/u1491/u14ac/u1492/u1489/u149b/u1499/u1499/u149f/u1489/u14ad/u14de/u14d7/u14cd/u14ca/u14dc/u1489/u14bc/u14d8/u14cf/u14dd/u14e0/u14ca/u14db/u14ce/u1495/u1489/u14e0/u14e0/u14e0/u1497/u14cd/u14de/u14d7/u14cd/u14ca/u14dc/u1497/u14cc/u14d8/u14d6");
this.a.a(text1, font1, brush2, new RectangleF(0f, 0f, 100f, 100f), format1);
this.a.a(text1, font1, brush1, new RectangleF(0f, 0f, 100f - ef3.Width, 100f - ef3.Height), format1);
…………………………
}

4. 打开ILDASM 载入DundasWebChart.dll文件,然后转储到指定文件夹中

打开DundasWebchart.il 找到绘画水印的位置

如下:

// IL_0b1a: ldc.i4.0=(this.e=true); //将其改为IL_0b1a: ldc.i4.1

IL_0b1a: ldc.i4.0

IL_0b1b: callvirt instance void
[System.Drawing]System.Drawing.StringFormat::set_Alignment(valuetype
[System.Drawing]System.Drawing.StringAlignment)

IL_0b20: ldloc.s V_24

IL_0b22: ldc.i4.1

保存,重新编译
ilasm /dll /RESOURCE=DundasWebChart.res DundasWebChart.il
覆盖到D:/Program Files/Dundas Software/Charting/WebControlVS2005/Samples/bin目录

DundasWebChart.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: