CuteEditor 使用摘录

 
2009-04-13 00:31

用DotNet多年了,也经常看到一些非常好的控件,最烦躁有些控件做得比较好,但老是有限制或者要注册啊,CuteEditor就是其中一个。一直以为FreetextBox时做得最好的。后来在CnBlogs上面听一个网友讲CuteEditor不错,下回来一看果然不错,但是有使用限制。Reflector一看发现混淆过。
还是使用原来老的破击方法去掉强名,去掉验证特性,运行报错:无法装载指定的DLL。Reflector看发现 LicenseManager.Validate(typeof(Editor));去掉这一段话,编译运行,对象找不到实例。因为混淆没有耐心去仔细查看。反正没有地方要用,第一次放弃。
昨晚加班,反正没有Bug要改和同事聊到控件时,因为自己也做控件,觉得这个控件的做法非常不错,继续尝试一次吧。
去强名;
去验证的特性;
LicenseManager.Validate(typeof(Editor)); 为LicenseManager.Validate(typeof(Object));
编译运行,发现Onprerender的时候a对象不存在。
在此找到构造函数追到 if (!EditorUtility.b())函数,下面方法可疑:改条件让他永远不执行吧
编译运行继续报同样的错误,
去掉protected override void OnPreRender(EventArgs e)中的 this.a.ad();
编译运行,这个时候错误在protected override void Render(HtmlTextWriter writer)地方出现。
确定a对象在OnPreRender之前被置为Null了。
因为代码混淆过了,这个时候用Reflector不好看执行顺序了,
用ilasm 编译成为Debug版本吧,用VS.Net的IDE环境来调试IL码,关键是找出什么时候被置为Null了,混淆的代码真乱,没耐心继续跟踪了,同事用IDE反复跟踪位置发现
stfld      class CuteEditor.Editor/a/a CuteEditor.Editor/a/a/a::a
在一段函数中两个字符串op_Inequality的时候ldnull
当然永远把他们改为op_Equality吧!
再次编译运行正确,并不需要注册文件。
改时间过一个月同样也 没有问题因为这个控件的授权方式还有好多种,所以也不知道破解得是不是充分。
有兴趣的可以下载测试吧。
破解包中本身以包含有完整的破解IL,大家可以继续修改和测试。

https://files.cnblogs.com/minsky/CuteEditor_for_NET4.5_Crack%20by%20Minsky.part1.rar
https://files.cnblogs.com/minsky/CuteEditor_for_NET4.5_Crack%20by%20Minsky.part2.rar

----------------------------------------------------------------------------------------------------------------------

CuteEditor文件夹下bin文件夹里的CuteEditor.dl,CuteEditor.lic,CuteEditor.ImageEditor.dll (5.0增加的EditorImage功能)拷到项目的bin目录下。如果需要拼写检查功能则还要拷NetSpell.SpellChecker.dll,并修改web.config文件,如下
<appSettings>
    <add key="DictionaryFolder" value="bin"/>
</appSettings>
(“.dic”为扩展名的文件是词典保存为纯文本文件的格式。将bin文件夹里的都拷到项目的bin目录下也可以)
2、将CuteEditor文件夹下CuteSoft_Client文件夹全部拷贝到应用程序的根目录下,并在项目根目录下建立一个uploads文件夹.
3、打开VS,在工具栏上点击右键-添加/移除项,在自定义工具箱中的.NET Framework组件,流览将 bin文件夹下的cuteEditor.dll文件引用,将Editor拖到页面即可

CuteEditor 5.0属性设置
1、插入数据库:Editor1.Text
2、文件夹设置: Imports System.IO(引入命名空间)
        Dim str As String = Session("UserName")  
        Dim path As String = "~/UploadFile/" + str + ""
        Dim fullPath As String
        fullPath = Server.MapPath("UploadFile\") + str
        **判断以UserName命名的文件夹是否存在,不存在则创建以UserName命名的文件夹
        If Not Directory.Exists(fullPath) Then
        Directory.CreateDirectory(fullPath)
        End If
        **将默认路径uploads改为“path”所表示的路径
        Editor1.SetSecurityGalleryPath(path)
3、按纽设置:* 属性----外观----AutoConfigure
             * 代码 Editor1.AutoConfigure = AutoConfigure.Simple
             * CuteEditor文件夹HowTo目录下的AddButton例子
4、上传文件大小设置(以flash为例):Dim kb As Int32 = 200
                     Editor1.SetSecurityMaxFlashSize(kb)

         更多配置查看帮助,看了才发现里面的英语并不难。很多事情真的要做了才知道。

另一篇文章
1、拷贝文件

(1)将CuteEditor、Bin文件夹下的:

CuteEditor.dll

CuteEditor.lic(解密文件)

CuteEditor.ImageEditor.dll (5.0增加的EditorImage功能)

NetSpell.SpellChecker.dll(拼写检查功能)

拷贝到项目的Bin目录下。

注:(“.dic”为扩展名的文件是词典保存为纯文本文件的格式。将bin文件夹里的都拷到项目的bin目录下也可以)

(2)将CuteSoft_Client文件夹及文件拷贝到项目的相应目录。

注:FilesPath用来设置所对就的目录,如:

FilesPath="~/admin/CuteSoft_Client/CuteEditor/"

(3)把example.css文件拷贝到相应目录,并设置EditorWysiwygModeCss属性。如:EditorWysiwygModeCss="/admin/CuteSoft_Client/CuteEditor/themes/example.css

综合设置如下:

<CE:Editor ID="Editor1" runat="server" FilesPath="~/admin/CuteSoft_Client/CuteEditor/" EditorWysiwygModeCss="/admin/CuteSoft_Client/CuteEditor/themes/example.css">        </CE:Editor>

2、修改Web.config文件

<appSettings>

     <add key="DictionaryFolder" value="bin" />

</appSettings>

<system.web>//注本节代码在.net2.0下是否需要设置,本人未验证。

     <browserCaps>

      tagwriter=System.Web.UI.HtmlTextWriter

     </browserCaps>

</system.web>

3、引用:

·<%@ Register Assembly="CuteEditor" Namespace="CuteEditor" TagPrefix="CE" %>

·<CE:Editor ID="ce1" runat="server" FilesPath="~/admin/CuteSoft_Client/CuteEditor/" EditorWysiwygModeCss="~/Admin/CuteSoft_Client/CuteEditor/Themes/example.css" ThemeType="Office2003_BlueTheme" >

</CE:Editor>

注:

可修改CuteSoft_Client\CuteEditor\Configuration\AutoConfigure文件夹下的文件,改便CuteEditor工具栏按钮的显示或排列。

可修改文件CuteSoft_Client\CuteEditor\Configuration\Shared\Common.config来添加字体。

-----------------------------------------------------------------------------------------------------------------------

当然首先这款编辑器,有的是直接下载.dll文件。我的资源中是破解版的,在bin目录下,请大家注意
现在介绍使用步骤:
1、将以下文件考贝到你站点根目录下的bin内(这些在CuteEditor6.0/bin下都可以找到)
CuteEditor.dll
CuteEditor.ImageEditor.dll(6.0增加的EditorImage功能)
CuteEditor.lic(解密文件)
NetSpell.SpellChecker.dll(拼写检查功能)
注:(“.dic”为扩展名的文件是词典保存为纯文本文件的格式。将CuteEditor6.0/bin文件夹里的都拷到站点根目录下的bin内也可以)
2、将CuteSoft_Client文件夹拷贝到项目的相应目录.(CuteSoft_Client包含CuteEditor文件夹和example.css,放了控件图片,文件之类的数据example.css它指定了编辑器的样式)
注:FilesPath用来设置所对应的目录,如:FilesPath="~/admin/CuteSoft_Client/CuteEditor/"
3、在根目录下建立Uploads的文件夹作为上传图片及附件的根目录。
4、将CuteEditor.dll添加到工具箱
5、CuteEditor属性设置(假设当前页在根目录下):
    1)AutoConfigure设为simple,即选择最简单的界面显示方式
    2)EditorWysiwygModecss设为:CuteSoft_Client/example.cs
    3)FilesPath设为:CuteSoft_Client/CuteEditor
6、控件的调用代码如下:
  <%@ Register TagPrefix="CE" Namespace="CuteEditor" Assembly="CuteEditor" %>
  <CE:EDITOR id="Editor1" runat="server" Width="700px" FilesPath="~/CuteSoft_Client/CuteEditor/" EditorWysiwygModeCss="../example.css" ThemeType="Office2003_BlueTheme"></CE:EDITOR>
7、修改Web.config文件
<appSettings>
    <add key="DictionaryFolder" value="bin" />
</appSettings>
<system.web>
    <browserCaps>
      tagwriter=System.Web.UI.HtmlTextWriter
    </browserCaps>
</system.web>
注意:
1)可以修改CuteSoft_Client\CuteEditor\Configuration\AutoConfigure文件夹下的文件,改便CuteEditor工具栏按钮的显示或排列。
2)可以修改文件CuteSoft_Client\CuteEditor\Configuration\Shared\Common.config来添加字体。
3)可以修改CuteSoft_Client\CuteEditor\Configuration\Security文件夹中的Admin.config,Default.config,Guest.config来控制权限上传图片和文件的问题。
(在属性里设置:SecurityPolicyFile为这.config三个中的一种)
特别提醒一下:有的系统可能要设置一下保存图片和文件的文件夹的访问权限,把Uploads文件夹的安全中everyone用户改为写入即可。不然文件会上传不上去,因为没有写入权限。
8、出错总结:
出错1:无法为类型 CuteEditor.Editor 授予有效的许可证。有关详细信息,请与组件的制造商联系。
原因:可能缺少CuteEditor.lic文件,把CuteEditor.lic文件考贝到Bin目录下即可。
出错2:点击工具栏里的插入样板按钮弹出这样的错误页面:使用主题 css 文件要求页上有标头控件。(例如 <head runat="server" />)。
原因:Asp.net2.0引入Theme后,要求<Head>标签runat="server"而CuteEditor是1.1版本引起的。
解决办法:给CuteSoft_Client\CuteEditor夹下的template.aspx里的<Head>添加runat="server"能解决加载时闪过的错误。给CuteSoft_Client/CuteEditor/Help下的default.aspx里的<Head>添加能解决点击工具栏里的插入样板按钮也弹出的错误页面。若点击其他工具栏也弹出同样的错误,可以右键错误页面,查看该页面的路径,修改在CuteSoft_Client文件夹下对应的页面中的<Head>标签。

posted on 2009-04-29 12:06  冉元胜  阅读(330)  评论(0编辑  收藏  举报

导航