日期:2014-05-18  浏览次数:20424 次

分享!!竟然破解了CuteEditor的Ajax Uploader! 求达人来分析一下上传控件的的用法.
这几天在测试CuteEditor的时候,
发现里面有一些新类,例如什么UploadModule,UploadBase,Uploader,UploadAttacments之类的.
上去官网,没发现有什么帖子写这个的.只有那个类似MSDN的在线文档有一些很简单的描述.

后来偶尔发现   ,   CuteEditor竟然没有限制这个控件的使用!
也就是说,我把临时的CuteEditor.lic删除掉,CuteEditor不可用了.
但是这个Uploader仍然可以用!!

不过我觉得奇怪的是,ASP.NET本身是自带Uploader的,CuteEditor为什么加了这个呢?
我的好奇心很重.不研究一下不心死.
我也不笨.我没花时间去研究,而是跑去它的网站上去问人.

才知道原来这个竟然支持AJAX   !!!!!!!

5555..终于解决了在UpdatePanel中上传文件的问题了.

于是立刻把CuteEditor.dll复制到另外一个工程,   换掉原来的上传组件测试.
发现了问题,   就是那个浏览文件的按钮不好用了.奇怪,在原来的工程里还好好的.
我想应该是因为没有复制CuteSoft_Client的原因吧.(因为我只把dll复制过来了)

我让公司的一个JS高手分析原因.
后来找到了.   问题竟然处在一个   1x1.gif   上面   -_-   .   好奇怪.
公司的同事说,这个控件用img的onload事件来加载脚本.
因为CuteSoft_Client/CuteEditor/Images/1x1.gif没有复制过去,所以客户端脚本没运行.

OK.   所有问题都解决了.

现在总结一下如何破解这个控件.

1.   首先就是快去cutesoft.net去下载CuteEditor6,   因为不知道什么时候CuteEditor会限制这个Uploader的使用.
2.   下载后,只提取CuteEditor.dll就足够了!!   其他文件一概不用复制.   爽!!
3.   把CuteEditor.dll复制到你的工程中.   在web.config的httpModules里加入:
<configuration>
<system.web>
<httpModules>
<add   name= "UploadModule "   type= "CuteEditor.UploadModule,CuteEditor "   />
</httpModules>
</system.web>
</configuration>
4.   在Web工程里,建立   CuteSoft_Client/CuteEditor/Images/1x1.gif   文件.
5.   新建一个WebForm1.aspx来测试
<%@   Page   language= "c# "   %>
<%@   Register   TagPrefix= "CuteEditor "   Namespace= "CuteEditor "   Assembly= "CuteEditor "   %>
<!DOCTYPE   HTML   PUBLIC   "-//W3C//DTD   HTML   4.0   Transitional//EN "   >
<html>
<head>
<title> WebForm1 </title>
</head>
<body>
<form   id= "Form1 "   method= "post "   runat= "server ">
<CuteEditor:Uploader   ID= "FileUploader1 "   OnFileUploaded= "FileUploader1_FileUploaded "   runat= "server ">
</CuteEditor:Uploader>
<asp:Label   Runat= "server "   ID= "Label1 "> </asp:Label>
</form>
</body>
</html>
<script   runat= "server ">
void   FileUploader1_FileUploaded(object   sender,CuteEditor.UploaderEventArgs   args)
{
Label1.Text= "你上传了: "+args.FileName+ ",存放在: "+args.GetTempFilePath();
}
</script>


OK,有兴趣的把这个代码搬进UpdatePanel里测试吧.   我这里是测试通过了,哈哈!!    

不过小弟的能力有限.  
根本不明白UploadSingleFile,UploadAttacments怎么用.
希望有达人能帮忙研究一下!谢谢!




------解决方案--------------------
接分
------解决方案--------------------
jf
------解决方案--------------------
天啊. 刚刚继续研究一下, 发现这个控件不止支持AJAX, 而且才回发的时候, 也是AJAX回发啊.
整个过程页面都没有POST一下. 这到底是怎么实现的啊!!