我有这两个文件a.vbs和a.bat每个只有一行。
a.vbs
CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False
a.bat
copy c:\blah\y.y c:\
当它工作时,它会在后台安静地运行a.bat,它会执行文件复制。
我可以开始..运行...... a.vbs a.bat 这样可行。 我可以打开命令提示符并执行wscript a.vbs a.bat
但是不起作用的是这个
开始...运行... wscript a.vbs a.bat
如果我把一个msgbox放在a.vbs中,很明显可以运行。 但看起来a.bat在使用该方法时不会运行..
该表格不起作用?
答案 0 :(得分:1)
当WScript.Arguments(0)不是完整路径时,a.bat需要位于当前目录中。
您可以使用以下方法检查当前目录:
WScript.Echo WScript.CreateObject("WScript.Shell").CurrentDirectory
如果a.bat始终与a.vbs位于同一文件夹中,则可以使用完整路径:
set fso=WScript.CreateObject("Scripting.FileSystemObject")
thepath=fso.BuildPath(fso.GetParentFolderName(WScript.ScriptFullName),"a.bat")
WScript.Echo thepath
答案 1 :(得分:0)
为什么使用vbscript只是为了调用.bat? Start --> Run --> a.bat
如果必须这样做,请执行Start --> Run --> cscript a.vbs a.bat