AxpDataGrid控件研究及License文件下载
AxpDataGrid是一个不错的数据库DataGrid控件,可以方便的处理数据的浏览、编辑、修改和删除等功能,能自动分页、导出Excel、支持多种样式(Skin)的显示。
更多详细信息可以访问:http://www.axezz.com/axpdatagrid/
本文主要研究其中的注册机制
1、试用版功能限制
试用版始终会显示一个要求注册的提示在页面上面,内容为
2、过程分析:
查看该控件结构,如果要去掉其中的试用版提示信息,需要涉及到以下内容
* DES对称密码加密机制
* .NET LicenseProvider组件注册机制
注册实现在Axezz.Internal.MyLicenseProvider域名空间实现
+ public class ServerLicenseProvider : LicenseProvider
|- public class MyLicenseProvider : ServerLicenseProvider
实现机制
1)、获取注册信息,从文件~/bin/{type.FullName}.lic中读取License注册数据
2)、运用DES加密算法根据既定的Key解密注册数据。
3)、判断解密后数据是否与{type.FullName} is licensed.相同,如果相同则注册成功,否则失败
如此获取一个该软件的注册文件就很容易了,代码就免了,附上一个License文件供参考
根据文档,复制文件Axezz.WebControls.AxpDataGrid.lic到~\bin\目录完成注册!
可惜不能上传文件,附上Base64String给大家
CXJgQSbMTWATS/EsnAZjcC9dxwQ2k/Ga0Q47832Fv20FkBbgAye1vKUlms8ZV8B4
将上面字符串用Convert.FromBase64String转换为byte[],然后写入文件Axezz.WebControls.AxpDataGrid.lic
就是License文件了
String licfile=@"C:\AxpDBNetCSSample\bin\Axezz.WebControls.AxpDataGrid.lic";
FileStream fs=new FileStream(licfile,FileMode.OpenOrCreate);
byte[] licdata=Convert.FromBase64String(linstr);
for(int i=0;i<size;i++){
fs.WriteByte(txt[i]);
}
fs.Close();