我遇到了VBScript的问题,昨天工作得很好,但由于某种原因今天不起作用。我试图从相邻服务器文件夹中的VBScript运行服务器上的批处理文件。 VBScript读起来像这样:
Dim Shell
Set Shell = CreateObject ("WScript.Shell")
Shell.run "cmd /K ..\Analyses\GeniE_SP.bat"
VBScript位于文件夹.. \ Local Design Calculations中的文件中,而批处理文件位于.. \ Analyses中。该脚本正在调用批处理文件,但是当批处理文件运行时,它正在运行VBScript的文件路径。这是命令窗口中显示的内容:
I:\Shared\Projects\105874\Local Design Calculations>REM @echo off
如果我只是从其实际位置运行批处理文件,则没有问题,因为命令窗口中的第一行将如此读取(应该如此):
I:\Shared\Projects\105874\Analyses>REM @echo off
有什么想法吗?
答案 0 :(得分:1)
Shell.run "cmd /K cd ..\Analyses & GeniE_SP.bat"
如果需要批处理文件的当前活动目录,请先更改它。
答案 1 :(得分:0)
您可以指定所需内容的完整路径。在WinNT中没有驱动器默认目录。图形程序(即普通程序)根据exe所在的文件夹设置自己的默认目录(这不是每个驱动器的默认值,而是默认的程序)。
对于控制台程序(即非图形化),cmd.exe模拟每个驱动器的默认目录。
指明完整路径。