快速提取PPT中嵌入的视频和SWF文件的方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安徽桐城余双红
图1-14 PPT中嵌入的SWF就以“生日礼物.swf”被提取,点击【确定】保
安徽桐城余双红
前面介绍的方法只适用于Microsoft Office Excel 2003。对于使用Microsoft Office Excel 2007以 上者,可以用以下方法操作。
1.将Excel07版中宏的安全级别降低。 2.新建一Excel文档,选择“开发工具”——启动“VB”编辑器。 (图1)
安徽桐城余双红
一、快速提取安PP徽T桐中城余嵌双红入的视频文件
PPT嵌入的视频,通常是指ppt2007及以上的版本 (ppt2003版本无法内嵌视频), 用解压缩软件 (winrar,好压等。。。)打开pptx文件, 在:\ppt\media文件夹中应该可以找到你要的,最好 直接解压它,分组按类型就找到了!
图1-3【工具】—>【宏】—>【VB编辑器】
安徽桐城余双红 图1-4 在VB编辑器中【插入】—>【模块】
图1-5 把下一幻灯片中的VBA代码粘贴到【模块】的代码窗口中。
安徽桐城余双红 Sub ExtractFlash()
Dim tmpFileName As String, FileNumber As Integer Dim myFileId As Long Dim myArr() As Byte Dim i As Long Dim MyFileLen As Long, myIndex As Long Dim swfFileLen As Long Dim swfArr() As Byte tmpFileName = Application.GetOpenFilename("office File(*.doc;*.xls),*.doc;*.xls", , "确定要分析的 Office 档") If tmpFileName = "False" Then Exit Sub myFileId = FreeFile Open tmpFileName For Binary As #myFileId MyFileLen = LOF(myFileId) ReDim myArr(MyFileLen - 1) Get myFileId, , myArr() Close myFileId Application.ScreenUpdating = False i=0 Do While i < MyFileLen If myArr(i) = &H46 Then If myArr(i + 1) = &H57 And myArr(i + 2) = &H53 Then swfFileLen = CLng(&H1000000) * myArr(i + 7) + CLng(&H10000) * myArr(i + 6) + CLng(&H100) * myArr(i + 5) + myArr(i + 4) ReDim swfArr(swfFileLen - 1) For myIndex = 0 To swfFileLen - 1 swfArr(myIndex) = myArr(i + myIndex) Next myIndex Exit Do Else i=i+3 End If Else i=i+1 End If Loop myFileId = FreeFile tmpFileName = Left(tmpFileName, Len(tmpFileName) - 4) & ".swf" Open tmpFileName For Binary As #myFileId Put #myFileId, , swfArr Close myFileId MsgBox "以" & tmpFileName & "名字保存" End Sub
二、快速提取安PP徽T桐中城余嵌双红入的SWF文件
这里以提取生日贺卡中嵌入的”生日礼物.swf”为例 介绍。 用“提取SWF.xls”提取嵌入PPT中的SWF文件。这个 方法还没有见到正式的命名。用Microsoft Office Excel 2003制作出“提取SWF.xls”,用这个文件可 以提取嵌入到PPT中的SWF文件,故把“提取SWF.xls” 文件作为软件名。
安徽桐城余双红
3.在打开的窗口中选择“插入”中的“模块”。 (图2)
4.粘贴提取S安WF徽的桐模城余块双代红码。(注:必须先将代码复制在 Word文档中再粘贴到此处。(图3)
5.关闭“VB”编辑器,将文档另存为Excel03版的工作薄 格式。命名为表格安1徽(桐可城余以双随红意命名),注意必须另存为03版的 格式。
1、制作“提取SW安F徽.桐x城ls余”双红方法
(1)把Excel 2003宏的安全等级降为“中” 由于“提取SWF.xls”文件中使用宏,在【模块】中加入
VBA代码,不降低宏的安全等级, “提取SWF.xls”不能正常运行。 宏的安全等级设置方法:【工具】→【宏】→【宏的安全
性】→选【中】见图1-1和图1-2
。
图1-7 复制嵌入“生日礼物.swf ”的flash控件
安徽桐城余双红
图1-8把嵌入“生日礼物.swf ”的flash控件粘贴到excel 。
安徽桐城余双红
图1-9【文件】→【另存为】之后选择路径,保存为“生日礼
3、 “提取swf.xls”使用方法 打开“提取安sw徽f桐.x城l余s”双红,出现【安全警告】,点击【启用 宏】。之后点击:【工具】—>【宏】—>【宏】—>【执行】,弹出 【确定要分析的offes档】对话框,把路径指向“生日礼物.xls”, 【执行】的结果是PPT中的SWF文件以“生日礼物.swf”被提取并保 存。见图 1-10至1-14
安徽桐城余双红
图1-6 退出VB编辑器后,另存为“提取SWF.xls”
安徽桐城余双红
已经建好的“提取SWF.xls” 点击这里下载
2、制作 “生安徽日桐礼城物余双.x红ls” 新建一个excel文档,,打开该文档,将PPT中的flash控件 ( ShockWave Flash Object )复制,粘贴到excel ,另存为“生 日礼物.xls”,见图1-7至图1-9
6.另新建一Excel文档,将幻灯片中插入的SWF控件复制后 粘贴到文档中。(图4)
7.将文档另存为Excel03版的工作薄格式。命名为表格2 (可以随意命名)注意必须另存为03版的格式。
安徽桐城余双红
8.重新打开表格1,选择“宏”——在“宏”窗口选择“执行”。 (图5)
安徽桐城余双红
9.在弹出的“确定要分析的Office文档”窗口找到保存的 表格2并打开。(图6)
图1-10 打开“提取swf.xls”,出现【安全警告】,点击【启用
安徽桐城余双红
可编辑
安徽桐城余双红
图1-11 打开“提取swf.xls”,点击:【工具】—>【宏】—>【宏】
安徽桐城余双红
图1-12【宏】—>【执行】
安徽桐城余双红
图1-13 弹出【确定要分析的offes档】,路径指向“生日礼物.xls”,点击 【打开】
图1-1 【工具】→【宏】→【宏的安全性】
安徽桐城余双红
图1-2 【宏的安全性】→选【中】
(2)新建e安xc徽e桐l文城余档双,红打开该文档,找到:【工具】—> 【宏】—>【VB编辑器】,在VB编辑器中【插入】—>【模块】 在弹出窗口中粘贴VBA代码(见后面)。退出VBA编辑器。另存为 “提取swf.xls”,见图1-3至图1-6。
安徽桐城余双红
安徽桐城余双红
可编辑
10.插入PPT中安的徽桐SW城F余文双件红就以Book2的名称保存。(图7)
安徽桐城余双红
“提取SWF.xls”制作不用安装软件,只要得到提取SWF模 块代码就可以制作“提取SWF.xls”,制作这个文件操作不算复杂。 制作完成后就可以用它单独来提取PPT中嵌入的SWF文件,操作很简 单,提取的SWF文件完整,文件也小,与嵌入PPT的SWF原件大小差 不多。因此相对于诸多方法,我推荐这个方法。