论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash AS编程教程
Tag:2.0,3.0菜鸟,游戏,,cs,技巧,源码,,文本,文字,函数,音乐,随机,拖拽,asp,access,xml,mc,视频教程

下载特殊方式保护的SWF文件

文章类别:Flash AS编程 | 发表日期:2008-10-6 18:39:55


今天收到了一封邮件:

买了您的FLASH组件、游戏、SWF加解密,对SWF的加密和解密产生了兴趣,在网上看见了下面这个网址 ,很想学习研究一番,如何得到这种后台输出的SWF,但没成功,希望得到您的指教 使用PHP来保护你的flash作品网址:http://www.weni.cn/index.php?play=reply&id=47这个3D的swf已经可以在此页面中可以看到,但在IE缓存中没有, 不知道如何得到它? 仅仅是为了学习、研究。

解答(www.fanflash.cn):
因为文中已经写出了这种保存方法的原理,所以解决的难度已经降低了,更何况它加载的地址是公开的.
要下载到目标SWF可以编写一个下载程序,模拟flash player向服务器提出下载请求,不过这种方法真的是很费时,另一种方法是使用flash里面已经存在的下载文件的类"FileReference",让flash把文件下载下来,下面是得到文件夹的整个过程

第一步:
首先我们要得到这个"壳"的SWF,为的是得到他的下载地址:

右击"++ 点击显示/隐藏媒体 ++",然后点击属性,就可以看到这个"壳"的地址了


第二步:
我样要得到真实SWF的地址,先把那个"壳"下载下来,然后我们可以用ASV来看看文件的真实地址.

从上面这张图可以看出,他的地址应该是:http://www.weni.cn/upload/protect_swf_with_php/index.php

第三步:
使用FLSAH下载它,下面是简单的一段代码:
import flash.net.FileReference;
var listener:Object = new Object();
listener.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
 _root.output_txt.text += "下载载情况:" + bytesLoaded + "/" + bytesTotal + "\n";
};
listener.onComplete = function(file:FileReference):Void {
 _root.output_txt.text += "下载完成";
};
listener.onIOError = function(file:FileReference):Void {
 _root.output_txt.text += "下载出错";
};
var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);
var url:String = "http://www.weni.cn/upload/protect_swf_with_php/index.php";
fileRef.download(url, "3d.swf");

这个FLA文件下载(下载后去掉.rar这个后缀):
下载文件 点击下载此文件

第四步:
用IE浏览器以"http://"方式访问这个SWF文件,在这里,我把生成的SWF文件放进我电脑IIS设置的默认网站文件夹内,然后以"http://localhost/test.swf"访问:

选择保存位置后就可以下载这个被隐藏在后面的文件了

打开被下载的3D.SWF文件:




视频教程列表
文章教程搜索
 
Flash AS推荐教程
Flash AS热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058