用vbs实现的exe2swf工具脚本代码
时间:03月28日
复制代码 代码如下:

dim?AsoR,FlashFileName?
Set?ArgObj?=?WScript.Arguments?

dim?PositionStart,OKed,Tag,EndSize?
PositionStart?=?920000'flash?4的播放器的大致字节数?
EndSize?=?8????'exe文件结尾字节数,其它版本可以设置为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,"文件已经存在?-?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?
最新动态
大家感兴趣的内容
关于我们 - 广告合作 - 联系我们 - 免责声明 - 网站地图 - 投诉建议 - 在线投稿
严禁网站镜像,否则追究法律责任 CopyRight © 2015-2018 信喏网络 All Rights Reserved.
地址:上海市经济技术开发区地盛西路1号 数码庄园A2座
电话:18758071355 微信:596644346 邮箱:596644346@qq.com
浙ICP备15017827号-1