ExcelHome技术论坛

标题: 有没有人试过如何把嵌入excel文件的flash提取出来? [打印本页]

作者: 徒然客    时间: 2007-4-29 17:33
标题: 有没有人试过如何把嵌入excel文件的flash提取出来?

如题,我先是试着把文件另存为html文件。但是没有在对应的文件夹当中找到flash。

后来又试图通过编程,也没找到方法。

不知道有谁试过?有比较好的方法?


作者: 井底之蛙    时间: 2007-4-29 17:37
发个附件让大家试试吧
作者: 徒然客    时间: 2007-4-29 17:42
QUOTE:
以下是引用井底之蛙在2007-4-29 17:37:54的发言:
发个附件让大家试试吧

(, 下载次数: 84)
发个word文档,原理应该是一样的
作者: 鱼之乐    时间: 2007-4-29 18:28
从Word中提取Flash
1、需要一款16进制编辑工具WinHex
2、打开含有Flash的Word文档,点击“控件工具箱”的“设计模式”按钮进入设计模式,选择Word中的Flash,复制粘贴到任意文件夹,会看到一个“片段”文件。
3、打开WinHex,将该“片段”文件拉到WinHex中,单击下拉菜单“搜索”→“查找16进制值”,搜索“
465753”,在搜索到的“465753”中的“4”位置上单击右键,选择“选块开始”。
4、继续“搜索”→“查找16进制值”,搜索“3A5C”,然后按住F3,直到出现“3A5C未找到”,点击“
是”,在最后搜索到的“3A5C”中“C”位置上单击右键,选择“选块结尾”。(注:少数情况可能会搜
索不到“3A5C”,则改为搜索“3A”或“5C”,方法相同)。
5、在选块内任意处点击右键→编辑→复制选块→进入新文件→输入文件名 (如test.swf) →保存。

作者: lwxg    时间: 2007-4-29 21:49

以前随便写的代码(改了下可以提取word或excel文件里多个嵌入的FWS格式的flash文件,分别保存)

Sub ReadData()
Dim tmpFileName As String, FileNumber As Integer, OldName As String
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
OldName = Left(tmpFileName, Len(tmpFileName) - 4)
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
            myFileId = FreeFile
            tmpFileName = OldName & i & ".swf"
            Open tmpFileName For Binary As #myFileId
            Put #myFileId, , swfArr
            Close myFileId
            i = i + swfFileLen + 8
        Else
            i = i + 3
        End If
    Else
        i = i + 1
    End If
Loop
MsgBox "以" & OldName & "1-n.swf 名字保存"
End Sub

[此贴子已经被作者于2007-4-29 22:09:54编辑过]

作者: lotustower    时间: 2007-4-29 22:13
QUOTE:
以下是引用lwxg在2007-4-29 21:49:07的发言:

以前随便写的代码(改了下可以提取word或excel文件里多个嵌入的FWS格式的flash文件,分别保存)

Thanks

 

[em17][em17][em17]
作者: mxqchina    时间: 2007-4-29 22:26
QUOTE:
以下是引用鱼之乐在2007-4-29 18:28:44的发言:
从Word中提取Flash
1、需要一款16进制编辑工具WinHex
2、打开含有Flash的Word文档,点击“控件工具箱”的“设计模式”按钮进入设计模式,选择Word中的Flash,复制粘贴到任意文件夹,会看到一个“片段”文件。
3、打开WinHex,将该“片段”文件拉到WinHex中,单击下拉菜单“搜索”→“查找16进制值”,搜索“
465753”,在搜索到的“465753”中的“4”位置上单击右键,选择“选块开始”。
4、继续“搜索”→“查找16进制值”,搜索“3A5C”,然后按住F3,直到出现“3A5C未找到”,点击“
是”,在最后搜索到的“3A5C”中“C”位置上单击右键,选择“选块结尾”。(注:少数情况可能会搜
索不到“3A5C”,则改为搜索“3A”或“5C”,方法相同)。
5、在选块内任意处点击右键→编辑→复制选块→进入新文件→输入文件名 (如test.swf) →保存。

鱼之乐,太厉害了,这个方法一定要记住.

我已经成功.

 

 下面是WORD附件里的FLASH

(, 下载次数: 45)
[此贴子已经被作者于2007-4-29 22:27:03编辑过]

作者: mxqchina    时间: 2007-4-29 22:33
QUOTE:
以下是引用lwxg在2007-4-29 21:49:07的发言:

以前随便写的代码(改了下可以提取word或excel文件里多个嵌入的FWS格式的flash文件,分别保存)


太强了,必须复制代码到EXCEL才能运行,

佩服的五体投地


作者: lwxg    时间: 2007-4-29 22:38

仔细看了下具体数据,可以看到存在以下特征码,它的后面4个字节就是嵌入的SWF文件(似乎不管什么格式office嵌入之后就变FWS文件头),所以前面的代码应该也可以用于提取CWS的格式.

6EDB7CD26DAECF1196B844455354000066556655


作者: winland    时间: 2007-4-30 08:55

两位都是强人啊。


作者: LangQueS    时间: 2007-4-30 09:10
难得的帖子,收藏了,谢谢!
作者: nawong    时间: 2007-4-30 09:33

謝謝!


作者: 孤城浪子    时间: 2008-3-31 22:37
终于找到从EXCEL中提取嵌入的flash文档的方法了!强人啊!收下了!
作者: 168216130a    时间: 2008-7-1 20:04

作者: lotustower    时间: 2008-11-16 22:54
ExtractFlash 已廣泛地  "私人化", 這文章完全沒有提過 !!!!

http://www.google.com.hk/search? ... TW&aq=f&oq=


最小我帶出去 http://cat14051.mysinablog.com/i ... mp;articleId=555049 , http://www.vbaexpress.com/forum/showthread.php?t=12570  的地方,  西方引用 都有指出處.

IVan: http://xcelfiles.homestead.com/SWF_ExtractFile.html

Walker News: http://www.walkernews.net/2008/0 ... from-excel-or-word/

[ 本帖最后由 lotustower 于 2008-11-16 22:57 编辑 ]
作者: lotustower    时间: 2008-11-16 23:21
5 /F 作者文章不值得嘉獎嗎?
作者: ldy    时间: 2008-11-17 03:51
很好的代码,多谢lotustower 推荐
新论坛不能给回复帖加精,只能加分鼓励
作者: aaron-sz    时间: 2008-11-24 18:42
标题: 回复 5楼 lwxg 的帖子
牛人.
问个菜鸟问题,怎么在EXCEL里插入FLASH呢?
作者: dzpasserby    时间: 2009-8-16 09:47
标题: 回复 4楼 鱼之乐 的帖子
收藏了,谢谢鱼之乐老师分享,祝您健康快乐!
作者: dzpasserby    时间: 2009-8-16 09:48
标题: 回复 5楼 lwxg 的帖子
收藏了,谢谢lwxg老师分享,祝您健康快乐!
作者: 幻砾    时间: 2012-5-9 16:47
收藏了 谢谢
作者: 02761752696    时间: 2017-11-30 12:47
正需要   谢谢




欢迎光临 ExcelHome技术论坛 (https://club.excelhome.net/) Powered by Discuz! X3.4