Board logo

标题: [已结]哪位帮忙注解代码: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! 很好啦,谢谢!