国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

用vbs實現的exe2swf工具腳本代碼

2020-06-26 18:12:05
字體:
來源:轉載
供稿:網友
幾個超據學習價值的VBS腳本用法:將exe格式的flash拖放在此vbs文件上,即可生成swf文件
 
復制代碼代碼如下:

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 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 北辰区| 白沙| 舒兰市| 海兴县| 融水| 赣州市| 中山市| 聂荣县| 台湾省| 桂林市| 呼图壁县| 调兵山市| 金寨县| 巴彦县| 安徽省| 三河市| 饶河县| 江山市| 云梦县| 平昌县| 北流市| 巴东县| 梅州市| 白城市| 大石桥市| 陈巴尔虎旗| 涿鹿县| 兴山县| 铁力市| 天全县| 酒泉市| 和平区| 乌拉特中旗| 新沂市| 垦利县| 沾化县| 龙江县| 浠水县| 灵寿县| 铅山县| 定西市|