标题: [已结]哪位帮忙注解代码:BAT动态生成VBS并调用
[打印本页]
作者: ruisoft
时间: 2008-12-1 10:53
标题: [已结]哪位帮忙注解代码:BAT动态生成VBS并调用
[求助]哪位高手能帮忙注解下面的代码,在此先谢谢啦!
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
IF "%1" NEQ "1" (
>"%TEMP%\TMP.VBS" ECHO SET WSHSHELL = WSCRIPT.CREATEOBJECT^(^"WSCRIPT.SHELL^"^)
>>"%TEMP%\TMP.VBS" ECHO WSHSHELL.RUN CHR^(34^) ^& %0 ^& CHR^(34^) ^& ^" 1^",0
START /D "%TEMP%" TMP.VBS
EXIT
)
[
Last edited by HAT on 2008-12-1 at 18:07 ]
作者: tireless
时间: 2008-12-1 12:28
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
:: 开启变量延迟。
→ 什么情况下该使用变量延迟?
IF "%1" NEQ "1" (
:: 如果
第一个参数(%1)的字符
不等于(NEQ)“1”,则执行后面括号里的命令。
:: 批处理参数
→ %0 代表批处理自身;%1~%9 代表批处理的9个参数。例如:
:: test.bat 的内容是:
@echo %1 %2 %3&pause
:: 执行
test.bat 1 2 3 4,就会显示
1 2 3。
:: NEQ
→ if /?
>"%TEMP%\TMP.VBS" ECHO SET WSHSHELL = WSCRIPT.CREATEOBJECT^(^"WSCRIPT.SHELL^"^)
>>"%TEMP%\TMP.VBS" ECHO WSHSHELL.RUN CHR^(34^) ^& %0 ^& CHR^(34^) ^& ^" 1^",0
:: 创建文件 TMP.VBS 到 %TEMP% 目录。
:: 其中使用的“^”符号是转义字符
→ CMD/DOS下符号的作用参考
START /D "%TEMP%" TMP.VBS
:: start /?
EXIT
)
作者: ruisoft
时间: 2008-12-1 17:23
ok!
很好啦,谢谢!