一直为去掉ILOG Elixir的水印而着急上火,没办法习惯了用Crack的DD。今天偶尔在为Flex Chart去水印时发现了一个比较好的办法,我想以后这种问题都可以用这个搞定:)
首先你得下载一个反编译swf的工具SWFDecompiler,随便找个带有水印的swf用SWFDecompiler打开
找到加水印的类,以Ilog为例,可以很容易找到对应的类和方法,如图:
将对应的类和包在你的工程中也建立一个一一对应的,这里可以打开ILog的官方例子工程,完成之后如下:
修改LicenseHandler文件找到其中的加水印的部分注释掉就可以了。
public static function displayWatermark(param1:DisplayObjectContainer, param2:Boolean = false) : void
{
//new LicenseHandler(param1, param2, new Date().getTime());
return;
}//
然后在你的Application的代码中加入一行代码:
[Frame(extraClass="ilog.utils.LicenseHandler")]
就这样ok,编译运行就可以看到讨厌的水印没有,以后有类似的问题也可以用同样的方法来解决:)
效果如下: