江湖问剑一键端swf文件swf压缩解压工具出错怎么办

使用zlib对swf压缩文件进行解压缩
使用zlib对swf压缩文件进行解压缩
使用zlib对swf压缩文件进行解压缩- -
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
在flash6.0以后的版本中,输出文件时,都提供了压缩这一选项,如果要在程序中获得flash的内容,必须对flash进行解压缩。它使用的压缩方法是zlib开放源码的压缩方法。从第9个字节开始到文件末尾全部进行了压缩,对其解压缩也是非常简单,可以使用zlib1.dll中提供的uncompress对其进行解压缩。
具体使用方法,参见zlib的官方网站:
里面惟一需要注意的是:压缩和解压缩的缓冲区的大小,应该是实际内容大小的 1.01倍+12 个字节。否则就可能出现错误。
基本代码如下:
&&tmpfile.Open(filepath,CFile::modeRead);
&&DWORD complen=tmpfile.GetLength();
&&BYTE* header=(BYTE*)::GlobalAlloc(GPTR,8);
&&BYTE* buf=(BYTE*)::GlobalAlloc(GPTR,(complen-8)*1.01+12);
&&BYTE* bufd=(BYTE*)::GlobalAlloc(GPTR,(filelen-8)*1.01+12);
&&tmpfile.Read(header,8);
&&tmpfile.ReadHuge(buf,complen-8);
&&tmpfile.Close();
&&u//return the value of the destlen.
&&uncompress(bufd,&destlen,buf,(complen-8)*1.01+12);
&//uncompress the swf file and return the destination file length.
&&header[0]=‘F‘;//change the header indentifier.
&CString temp1,temp2;
&&temp1=filepath.Left(filepath.GetLength()-4);
&&temp2.Format("~%s$.swf",temp1);
&&filedes.Open(temp2,CFile::modeCreate|CFile::modeWrite);
&&filedes.Write(header,8);
&&filedes.Write(bufd,destlen);
&&filedes.Close();
&&::GlobalFree(buf);
&&::GlobalFree(bufd);
&&return temp2;
你可以使用这个链接引用该篇日志 /blog/tb.b?diaryID=1233137
发表评论:
TA的最新馆藏[转]&[网页游戏] 江湖问剑一键端附图!!测试百分百成功,本机系统wi_网游单机版吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:8,772贴子:
[网页游戏] 江湖问剑一键端附图!!测试百分百成功,本机系统wi
进入游戏方法:
1、下载游戏压缩包
2、解压至D盘目录下(解压会得到一个名词为“dfjhwj”的文件夹)
,好像其他电脑符盘也行。。。。建议解压在D盘。
3、进入”D:\dfjhwj\ESSamp“下启动”ESSamp“
4、进入“D:\dfjhwj\Server\gameserver”启动”start“(等待约30秒加载)
5、浏览器输入地址”127.0.0.1“,进入浏览器页面后,屏幕会黑黑一片(截图1),随机输入账号及密码(截图2),
下一步重点:回车键(enter键)要是没有反应换一下账号,记得密码输入完后,鼠标显示针留在密码栏后面,
再按一下回车键。
6、进入人物选择界面。(截图3)
7、测试图(截图4、5、6、7、8、9、10)更多激情进入游戏自行体验
8、游戏下载地址:
拿自己刚刚在天刀的遭...
楼主是高1的学生党,每...
从昨天起就登陆不上去了...
32位可以带嘛?
.....为什么我输入127.0.0.1是无法显示网页···ESSamp2个都启动了·JAVA也安装了·start也打开了
经验条被挡住怎么解决
大神,为什么解压安装的时候显示,无法创建呢?
楼主大大 为啥我的不出输入账号栏??? 求解啊
贴吧热议榜
使用签名档&&
保存至快速回贴php zlib压缩和解压缩swf文件的代码
字体:[ ] 类型:转载 时间:
我在以前写过怎么使用c#来压缩和解压缩swf文件,解压缩,压缩和读取flash头文件信息
使用php就不一样了,php包含了zlib的链接库,可以直接使用其相关功能,下面是我写的压缩和结压缩swf文件的例子: //没有加入判断swf文件是否已经压缩,入需要可以根据文件的第一个字节是'F'或者'C'来判断 压缩swf文件: //-------------------------------------------------------------------------------------------------- //文件名 $filename = "test.swf"; //打开文件 $rs = fopen($filename,"r"); //读取文件的数据 $str = fread($rs,filesize($filename)); //设置swf头文件 $head = substr($str,1,8); $head = "C".$ //获取swf文件内容 $body = substr($str,8); //压缩文件内容,使用最高压缩级别9 $body = gzcompress($body, 9); //合并文件头和内容 $str = $head.$ //关闭读取的文件流 fclose($rs); //创建一个新的文件 $ws = fopen("create.swf","w"); //写文件 fwrite($ws,$str); //关闭文件留 fclose($ws); //---------------------------------------------------------------------------------------------------- ?& 解压缩swf文件: //---------------------------------------------------------------------------------------------------- //文件名 $filename = "test.swf"; //打开文件 $rs = fopen($filename,"r"); //读取文件的数据 $str = fread($rs,filesize($filename)); //设置swf头文件 $head = substr($str,1,8); $head = "F".$ //获取swf文件内容 $body = substr($str,8); //解压缩文件内容 $body = gzuncompress($body); //合并文件头和内容 $str = $head.$ //关闭读取的文件流 fclose($rs); //创建一个新的文件 $ws = fopen("create.swf","w"); //写文件 fwrite($ws,$str); //关闭文件留 fclose($ws); //---------------------------------------------------------------------------------------------------- ?& 怎么样?是不是很简单?呵呵,php给我们的不止是简单“`
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多关于 swf解压 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信