【问题标题】:VBScript is running batch file from the file path of VBScript, not path of batchVBScript 正在从 VBScript 的文件路径运行批处理文件,而不是批处理的路径
【发布时间】:2015-04-19 05:45:52
【问题描述】:

我遇到了一个 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

有什么想法吗?

【问题讨论】:

    标签: windows batch-file vbscript cmd


    【解决方案1】:
    Shell.run "cmd /K cd ..\Analyses & GeniE_SP.bat"
    

    如果批处理文件的当前活动目录是必需的,请先​​更改它。

    【讨论】:

      【解决方案2】:

      您可以指定所需内容的完整路径。 WinNT 中没有每个驱动器默认目录这样的东西。图形程序(即普通程序)根据 exe 所在的文件夹设置自己的默认目录(这不是每个驱动器的默认值,而是程序默认值)。

      对于控制台程序(即非图形),cmd.exe 模拟每个驱动器的默认目录。

      指定完整路径。

      【讨论】:

        猜你喜欢
        • 2012-08-07
        • 2015-05-12
        • 2020-12-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多