溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

理解exe2swf工具

發(fā)布時間:2021-09-29 15:09:14 來源:億速云 閱讀:153 作者:iii 欄目:開發(fā)技術

這篇文章主要講解了“理解exe2swf工具”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“理解exe2swf工具”吧!

Exe2swf ,將exe 格式的 flash文件轉為swf 格式。網(wǎng)上有很多這方面的工具,這個是用vbscript寫的。
用法:
將下面代碼存為 exe2swf.vbs 
將exe格式的flash拖放在此文件上,即可生成swf文件,
更新日期:2005-01-20 09:30

代碼如下:


'exe2swf工具,
'用法:將exe格式的flash拖放在此文件上,即可生成swf文件,
'haiwa@http://www.51windows.Net
'感謝jimbob提供幫助.
dim AsoR,FlashFileName
Set ArgObj = WScript.Arguments

dim PositionStart,OKed,Tag,EndSize
PositionStart = 920000'flash 4的播放器的大致字節(jié)數(shù)
EndSize = 8    'exe文件結尾字節(jié)數(shù),其它版本可以設置為0
FlashFileName = ArgObj(0)'傳遞路徑

set AsoR=CreateObject("Adodb.Stream")
AsoR.Mode=3 
AsoR.Type=1 
AsoR.Open 
set AsoW=CreateObject("Adodb.Stream")
AsoW.Mode=3 
AsoW.Type=1 
AsoW.Open
AsoR.LoadFromFile(FlashFileName)

OKed = true
dim filesize
filesize = AsoR.size

if filesize>PositionStart then
    while OKed
        AsoR.Position = PositionStart
        Tag = Bin2Str(AsoR.read(20))
        if instr(Tag,"0000000") >0 then
            PositionStart = PositionStart + 1
        else
            PositionStart = PositionStart + 20
        end if
        if Tag = "00000000000000000708783" or Tag = "00000000000000000678783" then
            OKed = false
        end if
        'if  PositionStart > filesize then
        '    OKed = false
        'end if
    wend
else
    msgbox "文件錯誤"
end if
PositionStart = PositionStart + 16
'msgbox PositionStart
AsoR.Position = PositionStart
AsoW.write AsoR.read(filesize-int(PositionStart)-int(EndSize))

'新文件名
dim newFileName
'newFileName = left(FlashFileName,len(FlashFileName)-4) & ".swf"
newFileName = FlashFileName & ".swf"

Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(newFileName)) Then
    overwrite = msgbox(newFileName&" 已存在"& vbnewline &"要替換它嗎?",308,"文件已經(jīng)存在 - exe2swf腳本")
    if overwrite=6 then
        AsoW.SaveToFile newFileName, 2
    else
        msgbox "操作被取消",0,"exe2swf腳本"
    end if
else
    AsoW.SaveToFile newFileName, 1
end if

AsoR.close
set AsoR=nothing
AsoW.close
set AsoW=nothing

Function Bin2Str(Bin)
    Dim I, Str
    For I=1 to LenB(Bin)
        clow=MidB(Bin,I,1)
        if ASCB(clow)<128 then
            Str = Str & (ASCB(clow))
        else
            I=I+1
            if I <= LenB(Bin) then Str = Str & (ASCW(MidB(Bin,I,1)&clow))
        end if
    Next 
    Bin2Str = Str
End Function

感謝各位的閱讀,以上就是“理解exe2swf工具”的內容了,經(jīng)過本文的學習后,相信大家對理解exe2swf工具這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI