`
meikanbao
  • 浏览: 14975 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

amchart的使用!~

 
阅读更多

  最近公司开发项目使用到了amchart控件,所以自己研究了下,发现在这个控件生成的图片以及曲线还是比较漂亮的,而且样式也比较多。废话不多说了http://www.amcharts.com/(立陶宛的公司)这是amchart的官方网站,登陆上去很清楚的就能发现支持flash charts flex charts  WPF/Sliverlight charts 这几种不同的应用,每种不同版本中又分为不同的曲线比如stock类型的、column&bar类型的。。。。可以自己看下,在Asp.net程序中,官方还提供了Asp.net控件版本的控件,在项目中引用控件后就可以直接使用,下面是一段实例代码
  :  public void BindData()
  {
  //手动生成一个DataTable
  DataSet ds = new DataSet("column");
  DataTable dt = new DataTable("columnTable");
  DataColumn dc_y = new DataColumn("year");
  DataColumn dc_v = new DataColumn("val");
  DataColumn dc_v1 = new DataColumn("val1");
  dt.Columns.Add(dc_y);
  dt.Columns.Add(dc_v);
  dt.Columns.Add(dc_v1);
  Random rd = new Random();
  for (int i = 2000; i 
  
  
  style="z-index: -1">
  You need to upgrade your Flash Player
  
  
  // 
  
  
  flash chart 使用的是csv格式的数据,将要展示的数据写入到csv文件中,之后根据配置文件.xml生成曲线
  至于配置配置文件可以使用http://extra.amcharts.com/editor/stock/官方提供的,可以很容易生成配置文件,其中配置文件中
  
  
  
  1C
           
  
  ***.csv
  events.xml
  
  true
  ,
  
  .
  
  date
  
  
  
  
  
  
  data_sets是用来配置曲线对应的数据文件的 ***.csv指示的对应的数据文件的名称指示了csv中要展示的那些数据   events.xml指的是触发事件的.xml文件的名称,使用的时候可以将要展示的数据写入csv文件(重新创建),之后将配置文件中的***.csv动态替换掉,之后在页面的so.addVariable("settings_file", encodeURIComponent(""));中引用配置文件就可以。上面介绍的是amstock曲线的使用方法,别的曲线大同小异!
  amchart的破解
  amChart的Chart破解到比较好找,自己也看了一下
  用Sothink SWF Decompiler破解swf文件,能看到加载注册信息的算法
  function checkKey(serial)
  {
  serial = com.amcharts.column.Utils.stripSymbols(serial, " ");
  serial = com.amcharts.column.Utils.stripSymbols(serial, "\n");
  serial = com.amcharts.column.Utils.stripSymbols(serial, "\r");
  serial = com.amcharts.column.Utils.stripSymbols(serial, "\r\n");
  arr = serial.split("-");
  if (Number(arr[2]) + Number(arr[3]) != 8645 || Number(arr[2].substr(1, 1)) - Number(arr[3].substr(2, 1)) != 2)
  {
  attachMovie("copyright_mc", "copyright_mc", 1001);
  } // end if
  } // End of the function 
  结果很简单,在注册文件里面填一个满足条件的注册号即可 
  例如:-cracked-1422-7223-cracked-
  把文件保存成amcharts_key.txt即可
  ================================================== =====
  amChart .net Control的破解就没找到了
  于是用Lutz Reader's .net reflector,反编译了控件,找到加密算法
  private bool CheckKey(string keyString)
  {
  try
  {
  string[] parts = keyString.Split(new char[] { '-' });
  if (parts.Length != 6)
  {
  return false;
  }
  if (parts[0].ToUpper() != "AMCHART")
  {
  return false;
  }
  if (parts[1].ToUpper() != "NETL")
  {
  return false;
  }
  int n1 = int.Parse(parts[3]);
  int n2 = int.Parse(parts[4]);
  int n3 = int.Parse(parts[5]);
  return (Math.Abs((int) ((((n1 * - (n2 * 7)) + 0x4d2) % 0x2710)) == n3);
  }
  catch
  {
  return false;
  }
  } 
  然后找一个满足条件的注册号也不难了,
  例如:AMCHART-NETL-Cracked-10-10-1244
  最后写入在web.config里面即可================================================== ==
  以上是在网上找到的破解方法。
  但是,我按照第二种方法破解,发现还是会显示未破解的链接,
  于是,自己也去用reflector,反编译了一下控件。
  发现如下代码:
  if (!string.IsNullOrEmpty(ConfigurationManager.AppSet tings["amcharts_net_key"]))
  {
  this.CheckKey(ConfigurationManager.AppSettings["am charts_net_key"]);
  }
  if (File.Exists(Path.Combine(HttpContext.Current.Serv er.MapPath("~/Bin"), "amcharts_net_key.txt")))
  {
  this.CheckKeyFile(Path.Combine(HttpContext.Current .Server.MapPath("~/Bin"), "amcharts_net_key.txt"));
  }
  if (File.Exists(Path.Combine(HttpContext.Current.Serv er.MapPath("~/App_Data"), "amcharts_net_key.txt")))
  {
  this.CheckKeyFile(Path.Combine(HttpContext.Current .Server.MapPath("~/App_Data"), "amcharts_net_key.txt"));
  }
  private bool CheckKey(string keyString)
  {
  try
  {
  string[] parts = keyString.Split(new char[] { '-' });
  if (parts.Length != 6)
  {
  return false;
  }
  if (parts[0].ToUpper() != "AMCHART")
  {
  return false;
  }
  if (parts[1].ToUpper() != "NETL")
  {
  return false;
  }
  int n1 = int.Parse(parts[3]);
  int n2 = int.Parse(parts[4]);
  int n3 = int.Parse(parts[5]);
  return (Math.Abs((int)((((n1 * - (n2 * 7)) + 0x4d2) % 0x2710)) == n3);
  }
  catch
  {
  return false;
  }
  }
  private bool CheckKeyFile(string keyPath)
  {
  try
  {
  return this.CheckKey(File.ReadAllText(keyPath).Trim());
  }
  catch
  {
  return false;
  }
  }
  原来控件不可以校验web.config中的注册号
  还可以校验bin和App_Data目录下的amcharts_net_key.txt文件。
  另外,swf所在目录下还要执行第一种破解才算完美破解
  amstock破解可以在这里下载到http://tianshikuqi8.download.csdn.net/
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics