您的位置:首页 > 其它

【转载】关于如何提取Exe文件中PPT源文件的几种方法

2010-05-11 17:25 495 查看
PPT课件,利用PowerPoint Slide Show Converter封装为exe文件后,今天想修改一下其中的内容,只能在转化为ppt文档了,但该死的是PowerPoint Slide Show Converter却不能把exe转化为ppt了,百度了好久后,终于发现一篇可以解决该类问题的文章,特转载于此,望能对大家有所帮助。
有些PPT文件被封装到了Exe文件当中,如何把它们提取出来?这个问题可能困扰着很多的朋友。本来无极不准备写这篇文章的,因为我希望所有的人都能尊重别人的劳动成果,通过一个正常、正确的渠道来获取自己喜爱的东西,树立一个正确的作品借鉴观。

可是,很多朋友也渴望我能帮助他们解决这个问题,所以我还是决定出来讲讲关于这方面的方法。在这篇文章中,我不会公开所有的细节。如果您想进入更高级部分的朋友,不妨去找本“加密与解密”之类的书看看,或者上“看雪论坛”,那里有很多这方面的教程。

要提取Exe中的PPT文档,首先您要确定它是如何被封装进Exe文件当中的。主要有下面几种方式:

(1)用压缩类的工具,把PPT文档打包成一个可执行自解压的Exe文件。

(2)把PPT文档作为资源,在程序设计语言中一同编译进Exe文件中。

(3)先把PPT文档用某个密钥进行二进制流式加密,再把它作为资源封装到Exe文件中。

(4)用专门的封装工具把PPT文档封装到Exe文件中。

这是几种惯用的方法,当然会还有一些不常见的,具体情况要具体分析,这主要看您的判断能力。

下面介绍几中常见的提取方法:

(1)对用压缩工具封装的Exe,您只需用压缩工具进行解压缩即可,碰到设置了密码,可以找到工具进行解密。

(2)如果是通过资源用程序设计语言编译封装的Exe,一般的情况下,这个exe是不会加壳的。您可以找个exe资源查看工具(如:ExeScope),用工具打开这个exe的资源,找到其中的PPT文档,把它导出来即可。

上面两种情况是最简单的,一分钟之内就可以解决问题。最难的是下面几种情况:

(3)如果事先就把PPT文档进行了流式加密,被封装在exe中的PPT文档也是加了密的,这时,如果您用资源提取工具导出,得到的还是加了密的文档,没有用。怎么办?你应该想到被流式加密的PPT文档,PowerPoint播放器也不认得,必须经过解密还原,还原后的文档一定藏匿在硬盘的某个角落中,用“搜索”搜一下就出来了。

注:把搜索日期设定为当前日期。

(4)用专门的封装工具封装后的Exe文件(如:PowerPoint Slide Show Converter),一般都会加上一个壳,加了壳的Exe可能不允许查看资源或者资源被加密,导出后也不是真实的PPT文档。不过,同3一样,它也需要把源文档还原才能播放,用搜索也能解决问题。当然,如果您是脱壳高手,把这个Exe脱壳就更妙了。

PowerPoint Slide Show Converter会把源文档释放在C:\Documents and Settings\用户登录名\Local Settings\Temp目录中,你可先把该目录清空,然后执行Exe,一眼就找到了。

有些工具采用了更好的加密方式,把还原后的PPT文档也给隐藏起来了。如:PPT文档打包加密器,针对这类的工具,需要掌握特殊的技术才能把PPT文档提取出来。

加密与解密是一个巨大的课题,不是一篇短短的文章就能解决所有问题的,这需要破解者具有广博的专业知识和丰富的经验。

总结:PowerPoint放映机是不能基于内存流读取数据的,它必须要给定一个准确的本地路径。也就是说封装了PPT文档的Exe需要把PPT文档释放到硬盘的某个位置,PowerPoint放映机才能播放。

pps改后缀名ppt就可以编辑

提取ppt里的flash的总结性的建议:

方法一,用Flash吸血鬼,下载地址见下,但不一定可行!
http://hi.baidu.com/anycai/blog/item/646e257ac3af40e92e73b3f2.html

方法二,一定可行,但真的不容易,确定自己有精力还对电脑挺精通的,就做吧!
1、找到Flash资源所在的幻灯片,选中Flash影片点右键选择“复制”。然后打开“资源管理器”,随便进入一个文件夹内,点鼠标右键选择“粘贴”,这时在文件夹内会出现一个文件名为“片段”的新文件。这次我们要利用UltraEdit-32软件。
启动UltraEdit-32选择打开上面得到的“片段”文件。执行“搜索”菜单中的“查找”。按照图1设置好查找条件。
————图1
2、搜索结果如图2。
———————图2
注意看“46 57 53”三个字节后面的五个字节,即“08 92 46 00 00”(不同Flash由于文件大小和版本不同,五个字节的实际值不可能和这里完全一样)。这五个字节有特定的意义:第一个表示Flash版本号,后四个表示该Flash文件的大小。特别要提醒的是:这里的数值是以十六进制计算的而且是倒序排列的,即文件大小是十六进制的00004692(下面计算时0000要省略)。用操作系统中自带的“计算器”软件把十六进制的“4692”换算成十进制等于“18066”。现在,回到UltraEdit-32中用鼠标选中从“46 57 53”开始向下的18066字节大小区间并复制(UltraEdit-32的状态栏中可以直接看到选定大小,如图3)。
—————————————图3
3、在UltraEdit-32中新建一个文件并输入“1“,然后点工具栏中红色“H”切换到16进制方式,选中“31”(“31”是数字“1”的ASCII码)后点鼠标右键“粘贴”。最后以扩展名.swf保存该文件就大功告成了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐