这个原理就是利用cmd的copy命令,将rar数据复制到追加到图片文件后却不影响图片的显示。一般被用于不能上传附件的但可以贴图的论坛。
不过前提是图片不能被压缩等二次处理。
由于手工去处理比较麻烦,本人写了个vbs脚本,直接选择要处理的图片和压缩包文件拖动到该vbs文件上松开即可1秒做好图种文件。vbs代码如下:
'描述:同时选择一个rar和一个图片文件,拖动到此vbs文件上 '作者:sysdzw '邮箱:[email protected] '时间:10:10 2014-08-01 <span style="font-family:SimSun;"> On Error Resume Next '所允许的格式,可手动修改,不过也就下面这几种了 ImgType="jpg,gif,png,bmp" RarTyp="rar,zip"</span> img = wscript.Arguments(0) rar = wscript.Arguments(1) if rar<>"" and img<>"" then if instr(ImgType,right(lcase(rar),3))>0 and _ instr(RarTyp,right(lcase(img),3))>0 then tmp=img img=rar rar=tmp end if img_=right(lcase(img),3) rar_=right(lcase(rar),3) if instr(ImgType,img_)=0 or instr(RarTyp,rar_)=0 then msgbox "图片格式仅限" & ImgType & " 压缩包格式仅限" & RarTyp & " 请仔细检查拖拽的文件类型是否正确!",vbExclamation,"图片和压缩包合体" wscript.Quit end if out = Left(img, InStrRev(img, ".") - 1) & "_out." & right(img,3) set wshshell = Wscript.createobject("wscript.shell") x=wshshell.Run("cmd /c copy /b /y """ & img & """+""" & rar & """ " & out &"""",0,true) if x = 0 then msgbox "执行完毕!输出文件:"+out,vbInformation,"图片和压缩包合体" else msgbox"失败!",vbExclamation,"图片和压缩包合体,然后拖到此脚本上" end if else msgbox "请同时选择一个图片文件和一个压缩包文件。",vbInformation,"图片和压缩包合体" end if
新建个记事本,复制上述代码,然后保存后将后缀名txt改成vbs即可。