:On Error Resume Next Sub bat echo off cls echo Batching_codez_here_following_vbs_rules pause start wscript -e:vbs "%~f0" Exit Sub End Sub MsgBox "This is vbs"
上面的代码巧妙利用 bat 和 vbs 的语法特征,让同一个文件,被 cmd.exe 识别成批处理,让 wscrpt.exe 识别成 vbs,并且同时符合两者的语法,并且保证都没有错误,保证两者的高度兼容。就叫它 bat/vbs 复合编程吧 (Hybrid Programming) 粗略解释下代码 引用: :On Error Resume Next
cmd.exe 识别成一段注释 wscript.exe 这样识别, : 在vbs语法里代表分行,然后 On Error Resume Next,也就是让WSH忽略一些错误
引用: start wscript -e:vbs "%~f0"
cmd.exe 识别成:启动 wscript.exe ,其参数是: ① -e:vbs 设定以vbs解析文件自身 ② "%~f0" 指这个批处理本身。